-
以下程序的运行结果是()
int main(void) { printf("%s , %5.3s\n", "computer", "computer"); return 0; }
A computer , puter
B computer , com
C computer , computer
D computer , compu.ter
-
若有定义语句:int year=1009,*p=&year;以下不能使变量 year 中的值增至 1010 的语句是()
A * p+=1;
B (* p)++;
C ++(* p) ;
D *p++;
-
下面代码会输出()
int main() { int a[4]={1,2,3,4}; int *ptr=(int*)(&a+1); printf("%d",*(ptr-1)); return 0; }
A 4
B 1
C 2
D 3
-
请找出下面程序中有哪些错误()
int main() { int i = 10; int j = 1; const int *p1;//(1) int const *p2 = &i; //(2) p2 = &j;//(3) int *const p3 = &i;//(4) *p3 = 20;//(5) *p2 = 30;//(6) p3 = &j;//(7) return 0; }
A 1,2,3,4,5,6,7
B 1,3,5,6
C 6,7
D 3,5
-
在32位cpu上选择缺省对齐的情况下,有如下结构体定义:
struct A{ unsigned a : 19; unsigned b : 11; unsigned c : 4; unsigned d : 29; char index; };
则sizeof(struct A)的值为()
A 9
B 12
C 16
D 20
-
设变量已正确定义,以下不能统计出一行中输入字符个数(不包含回车符)的程序段是
A n=0;while(ch=getchar()!=‘\n’) n++;
B n=0;while(getchar()!=‘\n’)n++;
C for(n=0;getchar()!=‘\n’;n++);
D n=0;for(ch=getchar();ch!=‘\n’;n++);
-
假设在一个 32 位 little endian 的机器上运行下面的程序,结果是多少?
int main() { long long a = 1, b = 2, c = 3; printf("%d %d %d\n", b, c, a); return 0; }
A 1,2,3
B 2,0,3
C 1,3,2
D 3,2,1
-
int main() { int m=0123, n=123; printf("%o %o\n", m, n); return 0; }
程序运行后的输出结果是()
A 0123 0173
B 0123 173
C 123 173
D 173 173
-
二维数组X按行顺序存储,其中每个元素占1个存储单元。若X [4] [4]的存储地址为0xf8b82140,X [9] [9]的存储地址为0xf8b8221c,则X [7] [7]的存储地址为()。
A 0xf8b821c4
B 0xf8b821a6
C 0xf8b82198
D 0xf8b821c0
-
求函数返回值,输入x=9999
int func(int x) { int count=0; while (x) { count++; x=x&(x-1);//与运算 } return count; }
A 8
B 9
C 10
D 12