题目内容

若有声明 char a[10][10] ,*p; ,则对p的正确赋值是( )。

A. p=a;
B. p=a[0][0];
C. p=a[0];
D. p=&a[0];

查看答案
更多问题

数组定义为“int a[4][5];”,则引用“a[1]+3”表示( )。

A. a[1][3]的地址
B. a[1][3]的值
C. a数组第4行的首地址
D. a数组第4列元素的地址

若数组定义为:int a[4][5]; ,则引用“*(*(a+1)+2)”表示( )。

A. a[1][0]+2
B. &a[1][2]
C. a[0][1]+2
D. a[1][2]

若有定义 int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};则下面错误的是( )。

A. int *p=a;printf("%d",*p);
B. int (*p)[4]=a; printf("%d",*(*(p+2)+3));
C. int *p=a[0];printf("%d",*(p+2*4+3));
D. int *p=&a[0][0];printf("%d",*(p+1*4+2));

查找字符串s2是否在字符串s1中出现,如果出现,则返回第一次出现的位置,否则返回-1。(请使用指针填空)#include int fun(char *s1,char *s2);int main(){char s1[]="How do you do?",s2[]="do";printf("%d\n", ① );return 0;}int fun(char*s1,char *s2){ int i,j,k;for(i=0;s1[i]!='\0';i++){ k=i;for(j=0; ② ;j++,k++);if(s2[j]=='\0')③ ;}return -1;}

答案查题题库