C语言错题小本子

时间:2022-03-17 13:51:02
 int a;
int x = ;
a = ! x< //a的值是多少

我的答案:0, 正确答案:1

错误原因:没有熟练掌握运算符的优先级

// 找出下面无效的C语言变量名
A. _a
B. main
C. print
D. struct

我的答案:B, 正确答案:D

错误原因:把main,print 错误的当作了C的三十二个保留字

 //下列的数组定义是否正确
int x[][] = {, , , ,}

我的答案:对, 正确答案:错误

错误原因:二维数组中 [行][列], 列是必须给出的,行编译器可以帮你数

 // 下面程序的编译运行情况
int k;
for (k=; k; k++);
printf("%d ", k);

我的答案:能运行,是死循环不能结束, 正确答案:能运行正常结束

错误原因:没有考虑到 int 是有边界的,超过边界,k会为0

 int a[] = {, , , , , , , };
int *p = &a[];
// 则 p[-] 的值是?

正确答案:54

原因:暂时没弄明白