一、选择题
(1)有以下程序
以下是引用片段: main() { int a[10]={1,2,3,4,5,6,7,8,9,10}, *p=&a[3], *q=p+2; printf("%d\n", *p + *q); } |
程序运行后的输出结果是
A)16
B)10
C)8
D)6
(2)有以下程序
以下是引用片段: main() { int a[]={2,4,6,8,10}, y=0, x, *p; p=&a[1]; for(x= 1; x<3; x++) y += p[x]; printf("%d\n",y); } |
程序运行后的输出结果是
A)10
B)11
C)14
D)15
(3)有以下程序
以下是引用片段: void sort(int a[], int n) { int i, j ,t; for (i=0; i for (j=i+1; j if (a[i] } main() { int aa[10]={1,2,3,4,5,6,7,8,9,10}, i; sort(aa+2, 5); for (i=0; i<10; i++) printf("%d,",aa[i]); printf("\n"); } |
程序运行后的输出结果是
A)1,2,3,4,5,6,7,8,9,10, B)1,2,7,6,3,4,5,8,9,10,
C)1,2,7,6,5,4,3,8,9,10, D)1,2,9,8,7,6,5,4,3,10,
(4)有以下程序
以下是引用片段: void sum(int a[]) { a[0] = a[-1]+a[1]; } main() { int a[10]={1,2,3,4,5,6,7,8,9,10}; sum(&a[2]); printf("%d\n", a[2]); } |
程序运行后的输出结果是
A)6
B)7
C)5
D)8
(5)有以下程序
以下是引用片段: void swap1(int c0[], int c1[]) { int t ; t=c0[0]; c0[0]=c1[0]; c1[0]=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, a+1); swap2(&b[0], &b[1]); printf("%d %d %d %d\n",a[0],a[1],b[0],b[1]); } |
程序运行后的输出结果是
A)3 5 5 3
B)5 3 3 5
C)3 5 3 5
D)5 3 5 3
|