11智能在线
新记
一道c语言的题目(38
int a[4][10],*p,*q[4];且0《i<4
赋值错误的是
1,p=a
2,q[i]=a[i]
3,p=a[i]
4,p=&a[2][1]
求为什么
举报该文章
相关建议 2012-09-14
1错了。a是二维数组,而p是指针,不能相互赋值。如果p是指向指针的指针,那样就可以赋值了
温馨提示:内容为网友见解,仅供参考
当前网址:
https://11.t2y.org/zz/s44q2q427.html
其他看法
第1个回答 2012-09-14
2错了*p[i]是指针数组存放的值应该为指针
本回答被网友采纳
第2个回答 2012-09-14
int a[4][10] // 这是定义一个整型二维数组
int *p //这是定义一个指向整型的指针
int *q[4] //这是定义一个指向整型的指针数组
1,p=a //a是二维数组名,也就是二维数组首元素的地址,p是一个指向整型的指针,把地址赋值给指针,正确。
2,q[i]=a[i] //q[i]是一个指针,a[i]是i+1行首元素的地址,赋值合法,正确。
3,p=a[i] //p是一个指向整形的指针,a[i]是i+1行首元素的地址,赋值合法,正确。
4,p=&a[2][1] //p是一个指向整形的指针,&a[2][1]是第三行第二个元素的地址,赋值合法,正确。
所以你这题就没有错误的选项。不知我说的对不对
第3个回答 2012-09-14
应该是 2吧! 我觉得 两个一个是二维数组,一个是指针!
相似回答
c语言
从一开始报数一共
38
名,老师按1,2,3重复报数为1的同学往前走一步...
答:
printf("报数为1(向前一步)的同学:\n");for(i=1;i<=
38
;i+=3)printf("%d ",i);printf("\n");printf("报数为2(后退一步)的同学:\n");for(i=2;i<=38;i+=3)printf("%d ",i);printf("\n");return 0;}
大家正在搜
c语言一百道题
c语言随机出10道题目
c语言100道经典题目下载
c语言给小学生出题一次10道
c语言100道经典题
100道c语言面试题
c语言随机出十道题并评分
c语言例题100道附解析
c语言分别出十道加法题