基础C语言选择题求解释

6、设有程序段intk=10;while(k=10)k=k-1;则下面描述中正确的是。A)while循环执行10次B)循环是无限循环C)循环体语句一次也不执行D)循环体语... 6、设有程序段
int k=10;
while(k=10) k=k-1;
则下面描述中正确的是。
A)while循环执行10次B)循环是无限循环
C)循环体语句一次也不执行D)循环体语句执行一次

为什么选b
展开
 我来答
白白先生丶828
2014-06-19 · 超过55用户采纳过TA的回答
知道答主
回答量:188
采纳率:0%
帮助的人:52.4万
展开全部
1、首先我们知道宏只是简单的字符替换,那么宏NUM实际就等价于
(N+1+1)*N+1/2,再等价于(2+1+1)*2+1/2,然后要注意优先级的问题,NUM=8,那么循环就是1~8。
2、A、*p //就是a[0]
B、a[10] //这样就越界了,数组元素只有a[0]~a[9]
C、*a //就是a[0]
D、a[p-a] //就是a[0]
3、我们知道字符数组是以数字0(也就是'\0')为结束标识的。p指向的是字符数组第一个元素'H',那么p+1指向'e',p+2指向'l',p+3指向'l',p+4指向'o',p+5指向'\0'。
3、A、p+=2,*(p++) //p指向元素1,p+=2后p指向元素3,p++:先使用再自增,则*(p++)就是3
B、p+=2,*++p //++p先自增再使用,则*++p是4
C、p+=3,*p++ //p+=3后p指向元素4
D、++*p //值为2
4、strcpy(s1,s2)将s2复制到s1并返回s1,即之后s1与s2内容是一样的,strlen取长度值为4。
5、 A、scanf("%d%s",&p->num,p->name);
B、scanf("%d%s",&p->num,&p->name);
C、scanf("%d%s",&p.num,p.name);
D、scanf("%d%s",&p.num,&p.name);
以结构指针操作成员要用到成员运算符->,那么C、D排除;scanf需要的是一个内存地址,p->num是一个整型变量,要用取地址符&;结构中成员name是一个字符数组,p->name表示的是这个字符数组的首地址,不需要再用取地址符。
请采纳答案,支持我一下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阳顶天鹿鼎记
推荐于2016-07-22 · TA获得超过502个赞
知道小有建树答主
回答量:675
采纳率:100%
帮助的人:394万
展开全部
while(k=10),这个循环是对k的赋值,中间一个等号=,所以k会被赋为10,而10是非0值,为真,

while条件一直成立。会一直死循环。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式