帮忙看两道题吧,最好能解释一下错误选项?

1.对于如下3个循环语句,则下列说法正确的是〔〕while(e1)循环体;for(;e2;)循环体;do循环体while(e3);A.表达式e1可省略B.表达式e2可省略... 1.对于如下3个循环语句,则下列说法正确的是 〔 〕
while(e1) 循环体;
for(;e2;) 循环体;
do 循环体 while(e3);

A. 表达式 e1 可省略 B. 表达式 e2 可省略
C. 表达式 e3 可省略 D. 表达式e1、e2 和 e3 均可省略

2.设有说明语句如下,则下列选项中,存在语法错误的语句是 〔 〕
float a[3][4],*p1,(*p2)[3],(*p3)[4];

A. p1=*a; B. p1=a[0]; C. p2=a D. p3=a;
展开
 我来答
microroom
科技发烧友

2021-09-28 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:7118
采纳率:83%
帮助的人:1718万
展开全部
1
只有for的可以省略,选B。
2
选C。
因为p2指向的一维数组(或指向二维数组的某个元素)的大小应该是3,而a的二维的大小是4。
所以,D对C错。
更多追问追答
追问
第一题的for循环省略了判断条件,那for循环就是直接判断为真,无终止循环吗?
第二题的p1是指针变量,A选项的右值应该是地址才对啊,B选项的右值也只是一个元素值 而不是地址,类型不同能赋值吗?
追答
1
是死循环
2
*a就是a[0],而a[0]是一个一维数组的数组名,它就是一个地址,类型是相同的。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式