c语言,为何不选A,ger()函数是将原有数组内容全部抹去重新赋值?

 我来答
切俊健
2015-08-29 · TA获得超过1281个赞
知道小有建树答主
回答量:824
采纳率:100%
帮助的人:514万
展开全部
数组a取得了输入字符串的前半部分,即"Fig flower",数组b取得后半部分" is red."
printf将两个字符串打印出来,所以是答案B。
但是题目中的代码是错的,gets参数大写B是什么?根本没定义,换本书看吧,这本教材粗制滥造的厉害。
追问
两个问题
1.scanf函数输入时按空格不是停止输入么?那不就是只输入了fig?
2.b数组里原来不是就有字符串么,用get函数输入是从b [ 0 ] 开始覆盖原来的数组元素么?还是将b数组元素都抹点重新赋值?
追答
1 scanf不会遇到空格就停止输入,空格也有字符,也有ASCII码值
2 是从b[0]开始覆盖,并且在b[7]处加了'\0'
zjnny
2015-08-29 · TA获得超过2037个赞
知道小有建树答主
回答量:1055
采纳率:100%
帮助的人:1066万
展开全部
不是,这个题是不是打印有问题
gets(B);里的B如果是指的b话
b中的内容实际上变成了,b[]=" is red.'\0's blue.";
gets是读取字符串写入内存,b输出时是按'\0'判断结束的所以忽略后面的"s blue."了
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式