下面程序的输出是:main(){char*s="wbckaaakcbw";inta=0,b=0,c=0,x=0,k;for(;*s;s++)switch(*s){case'c':c++;case'b':b++;default:a++;case'a':x++;}printf("a=%d,b=%d,c=%d,x=%d\n",a,b,c,x);}
A. a=8,b=4,c=2,x=11
B. a=4,b=2,c=2,x=3
C. a=8,b=4,c=2,x=3
D. a=4,b=4,c=2,x=3
查看答案
若有以下的定义和语句:main(){inta[4][3],*p[4],j;for(j=0;j<4;j++)p[j]=a[j];┇}则能表示a数组元素的表达式是:
A. *(p[1])
B. a[4][3]
C. a[1]
D. *(p+4)[1]
以下正确的定义和语句是:
A. inta[10],*p;char*s;p=a;s=a;
B. doublea[5][3],b[5][3],*s;s=a;b=a;
C. floata[5][3],*p[3];p[0]=a[0];p[2]=a[4];
D. inta[5][3],(*pb)[5],(*pp)[3];pb=a;pp=a;
若以下定义和语句,0≤i<10,则对数组元素地址的正确表示是:inta[]={1,2,3,4,5,6,7,8,9,0},*p,i;p=a;
A. &(a+1)
B. a++
C. &p
D. &p[i]
不正确的字符串赋值或赋初值方式是:
A. char*str;str="string";
B. charstr[7]={'s','t','r','i','n','g'};
C. charstr1[10];str1="string";
D. charstr1[]="string",str2[]="12345678";