C语言设char *S="china";则printf("%s,%c,%c\n",s,*s,s[3]);的输出是?

设char*S="china";则printf("%s,%c,%c\n",s,*s,s[3]);的输出是?A.china,c,nB.china,china,iC.c,c,... 设char *S="china";则printf("%s,%c,%c\n",s,*s,s[3]);的输出是?

A.china,c,n
B.china,china,i
C.c,c,n
D.china,china,n
选择哪个,麻烦在详细说明下。
展开
 我来答
White_MouseYBZ
推荐于2017-09-20 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6609万
展开全部
有错误:char *S="china";中的S是大写的,printf中的变量列表都是小写s,所以没有匹配变量,编译都过不了,要知道C是大小写敏感语言。若不计此问题,输出是china,c,n。因为%s对应从指针s值开始的字符串;中间的%c对应*s输出指针s的内容,即一个字符c;后一个%c对应s[3]元素n,由于下标是从0开始的,所以是第4个元素n。它们都用逗号隔开。
CSharpB
2009-03-03
知道答主
回答量:14
采纳率:0%
帮助的人:0
展开全部
选择A。%s 表示打印出字符串,所以是china,%c表示打印一个字符,*s刚好是取第一个字符,所以是c,至于s[3]就不用解释了数组是0下标开始的,字符串指针可以当成数组使用,不同的是数组的指针不能赋值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jinglebaby0807
2009-02-27 · TA获得超过193个赞
知道小有建树答主
回答量:251
采纳率:0%
帮助的人:180万
展开全部
选择A,s指向china这个字符串,以%s打印的话,就可以把这个字符串打出来,而*s表示s指向的第一个字符,所以是'c',s[0]就是s中的第一个字符,s[3]就是第4个字符。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
新页258
推荐于2017-09-20 · TA获得超过445个赞
知道小有建树答主
回答量:762
采纳率:100%
帮助的人:521万
展开全部
选A
因为,printf("%s,%c,%c\n",s,*s,s[3])中,第一个s的输出格式是字符串格式,程序中,将china赋给指针变量,所以全部输出,第二个标号(*s)指向数组第一个元素,所以输出c,第三个就不说了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小的叛小逆ate5b
2009-02-27 · TA获得超过132个赞
知道小有建树答主
回答量:253
采纳率:0%
帮助的人:207万
展开全部
A;很显然
你第一个是串输出,s表示地址就输出China了,%c是输出一个字符,*s就输出c了。最后一个很显然
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(9)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式