下面程序段的运行结果是________。char ch[5]={ 'a', 'b', '\0', 'c', '\0'};printf("%s", ch);
A. 'a' 'b'
B. ab
C. ab c
D. a, b
查看答案
已有定义语句“char ch1[10]= "12345", ch2[10]= "abcde", ch3[10];”,下面语句中能将ch1中存储的字符串和ch2中存储的字符串正确交换的是。
A. ch3=ch1,ch1=ch2, ch2=ch3;
B. ch3[0]=ch1[0],ch1[0]=ch2[0],ch2[0]=ch3[0];
C. strcpy(ch3[0],ch1[0]),strcpy(ch1[0],ch2[0]),strcpy(ch2[0],ch3[0]);
D. strcpy(ch3,ch1), strcpy(ch1, ch2), strcpy(ch2, ch3);
已有定义“int a[2][3]={0},*p=a[0];”,下面表达式中有语法错误的是() 。
A. a[0]=1
B. p[0]=1
C. *p=1
D. a[0][0]=1
已有定义“int a[4][4]={{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}, {13, 14, 15, 16}};”,若需要引用值为15的数组元素,则下列选项中错误的是() 。
A. *(a+3)+2
B. *(*(a+3)+2)
C. *(a[3]+2)
D. a[3][2]
已有定义“int a[3][3]={5,4,3,2,1},*p1=a[0],(*p2)[3]=a;”,下面选项中不能输出1的语句是()。
A. printf("%d", a[1][1]);
B. printf("%d", p2[0][1]);
C. printf("%d", p1[4]);
D. printf("%d", p2[1][1]);