本文主要是介绍十道一般人无法及格的C语言试题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、对下述代码说法正确的是: 对下述代码说法正确的是: (#include <stdio.h>
int main(void)
{
char aChar;
int aInt;
aInt = aChar = -120;
printf("%d\n", aInt);
return 0;
}
A、 一定输出-120 。 B、一定不能输出-120 。 C、可能输出-120。 D、输出 %d
2、对下述代码说法正确的是: 对下述代码说法正确的是: 说法正确的是 ( )
void main(void)
{
char a[] = {0, 1, 2, 3};
int *p = (int *)a; printf(“%d ”, *p);
}
提示:字符 0 的 ASCII 码是 48.
A、输出 0 B、输出 48 C、如果 CUP 是小端的话输出一个负数。 D、以上说法都不 正确。
3、对下述代码说法正确的是: 对下述代码说法正确的是: 正确的是 ( )
int main(void)
{
unsigned int a = 4;
int b = -10;
(a + b) > 0 ? printf("> 0") : printf("< 0");
return 0;
}
A、输出 > 0 B、输出 < 0 C、没有输出 D、语法错误。
4、 对下述代码说法正确的是: 正确的是 ( )
void main()
{
char a[3];
char b[ ] = “China”;
a = b;
printf(“%s”,a);
}
A. 输出:China B.输出:Ch C.输出:Chi D.编译出 错
5、运行下述 C 程序会显示程序会显示( )
void swap(int *a, int *b)
{
int *temp = NULL;
temp = a;
a = b;
b = temp;
}
void main()
{
int a = 1;
int b = 2;
swap (&a, &b);
printf(“%d,%d”, a, b);
}
A、 输出 1, 2. B、输出 2,1 C、 swap 函数编译出错。 D、函数调用出错。
6、对下述 C 代码说法正确的是 代码说法正确的是( )
struct student
{
char *name;
float mark;
};
void main()
{
struct student stud;
stud.name = (char *)malloc(10);//假设申请成功
memset(&stud, 0, sizeof(struct student));
strcpy(stud.name, “cc”);
printf(“%s\n”, stud.name);
}
A、输出 cc 。B、没有输出 。C、输出 0 。 D、strcpy(stud.name, “cc”);出现段错误。
7、对下述 C 代码说法正确的是代码说法正确的是( )
void my_free(void *p)
{
free(p);
p = NULL;
}
void main()
{
int *p = (int *)malloc(sizeof(p)); //假设申请成功
*p = 10;
my_free(p);
if (p != NULL)
{
*p = 20;
}
}
A、 语法错误。 B、发生内存遗漏。 C、 发生内存重写。 D、既发生内存遗漏又发生内存重 写。
8、对下述 C 代码说法正确的是代码说法正确的是( )
void main()
{
const int a = 20;
int *p = &a;
*p = 30;
printf(“%d\n”, *p);
return 0;
}
printf(“%d\n”, *p);
return 0;
}
A、 int *p = &a;报警告或错误。
B、*p = 30; 报警告或错误。
C、const int a = 20; 报警告或错误。
D、没有警告 或错误。
9 、有关下述代码说法正确的是
*intPointer = 5;
printf(" 内 存 地 址 %p 的 内 容 是 %d\n", intPointer, *intPointer);
*doublePointer = 12.5; printf(" 内 存 地 址 %p 的 内 容 是 %d\n", doublePointer , *
doublePointer);
free(intPointer);
free(doublePointer);
return 0; }
A、 上述代码可能会发生内存遗漏。 B、上述代码有语法错 误。 C、 上述代码出现段错误。 D、 上述代码可能会发生 内存重写。
10 、题目:有关下述代码说法正确的是()
File1.c
static int a = 5;
File2.c
extern int a;
int fun()
{
a++;
return a;
}
void main(void)
{
printf(“%d”, fun());
printf(“%d”, fun());
}
A. 输出 6 7 C. 输出 6 6 B、编译文件时不报错,连接时报错 D、 编译 File2.c 时出错
答案:CDADA DCABA
File1.c
static int a = 5;
File2.c
extern int a;
int fun()
{
a++;
return a;
}
void main(void)
{
printf(“%d”, fun());
printf(“%d”, fun());
}
A. 输出 6 7 C. 输出 6 6 B、编译文件时不报错,连接时报错 D、 编译 File2.c 时出错
答案:CDADA DCABA
这篇关于十道一般人无法及格的C语言试题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!