1.有以下程序: main() {char a[]="abcdefg",b[10]="abcdefg"; printf("%d %d\n",sizeof(a),sizeof(b)); } 执行后输出结果是() A)7 7 B)8 8 C)8 10 D)10 102.有以下程序: void swapl(int c[]) {int t; t=c[0];c[0]=c[1];c[1]=t; } void swap2(int c0,int c1) {int t; t=c0;c0=c1;c1=t; } main() {int a[2]={3,5},b[2]={3,5}; swap1(a);swap2(b[0],b[1]); printf("%d%d%d%d\n",a[0],a[1],b[0],b[1]); } 其输出结果是() A)5 3 5 3 B)5 3 3 5 C)3 5 3 5 D)3 5 5 3 3.有以下程序: void sum(int *a) {a[0]=a[1];} main() {int aa[10]={1,2,3,4,5,6,7,8,9,10},i; for(i=2;i>=0;i--)sum(&aa[i]); printf("%d\n",aa[0]); } 执行后的输出结果是() A)4 B)3 C)2 D)1 4.有以下程序: int f(int b[][4]) {int i,j,s=0; for(j=0;j<4;j++) {i=j; if(i>2)i=3-j; s+=b[i][j]; } return s; } main() {int a[4][4]={{1,2,3,4},{0,2,4,5},{3,6,9,12},{3,2,1,0}}; printf("%d\n",f(a)); } 执行后的输出结果是() A)12 B)11 C)18 D)16 5.有以下定义: #include char a[10],*b=a; 不能给a数组输入字符串的语句是() A)gets(a) B)gets(a[0]); C)gets(&a[0]); D)gets(b); 6.有以下程序: main() {char *p[10]={"abc","aabdfg","dcdbe","abbd","cd"}; printf("%d\n",strlen(p[4])); } 执行后输出结果是() A)2 B)3 C)4 D)5 7.有以下程序: int a=2; int f(int *a) {return(*a)++;} main() {int s=0; {int a=5; s+=f(&a); } s+=f(&a); printf("%d\n",s); } 执行后输出结果是() A)10 B)9 C)7 D)8 8.有以下程序: #define f(x) x*x main() {int i; i=f(4+4)/f(2+2); printf("%d\n",i); } 执行后的输出结果是() A)28 B)22 C)16 D)4 9.设有以下语句: typedef struct S {int g;char h;}T; 则下面叙述中正确的是() A)可用S定义结构体变量 B)可以用T定义结构体变量 C)S是struct类型的变量 D)T是struct S类型的变量 10.有以下程序: struct STU{ char name[10]; int num; }; void f1(struct STU c) {struct STU b={"LiSiGuo",2042}; c=b; } void f2(struct STU *c) {sturct STU b={"SunDan",2044}; *c=b; } main() {struct STU a={"YangSan",2041},b={"WangYin",2043}; f1(a);f2(&b); printf("%d%d\n",a.num,b.num); } 执行后的输出结果是() A)2041 2044 B)2041 2043 C)2042 2044 D)2042 2043 答案:1.C 2.B 3.A 4.D 5.B 6.A 7.C 8.A 9.D 10.A
相关资料
|