C语言:求解试题6,过程详细一点,谢谢

 我来答
自我编程
2019-04-18 · 科技优质答主
自我编程
采纳数:1481 获赞数:4283

向TA提问 私信TA
展开全部
首先,看你题目,题目最后输出的代码有错。

printf这里格式是%s不是%ds。
这个代码s是一个指针数组,每一个指针指向一个字符串。(相当于二维字符数组)
while这一段的意思就是:接收最多9个字符(回车确认)(字符必须是'5'~'8'范围内的字符,输入以外字符无效)。把输入的字符依次保存在数组a中,
while输入完毕,在a数组最后一个字符后面添加结束符号0(这样a才是一个完整的字符串)。
for这一段就是遍历a数组,取出a数组的每一个数字字符,并求'9'-a[k]-1的值,取该值为下标的s数组元素,也就是对应s数组中的字符串(s中每一个元素就是一个指针,其值就是对应字符串的首地址)。
(1)输入5678,那么a数组中的字符串就是“5678”,那么依次取a的元素就是'5','6','7','8'。
那么'9'-a[k]-1的值就是3,2,1,0。那么打印的就是s[3]s[2]s[1]s[0],也就是"four" "three" "two" "one"。选D。
( 2 )输入8561#,a数组中的字符串是“8561”,打印的就是s[0]s[3]s[2]s[7],也就是"one" "four" "three" 。(s[7]没有初值)。选C
(3)(4)同理不解释了。
匿名用户
2019-04-18
展开全部
a数据只能存放字符 5到8
第一组输入 5678
s['9'-'5'-1] = s[3] == 'four'
s['9'-'6'-1] = s[2] == 'three'
s['9'-'7'-1] = s[1] == 'two'
s['9'-'8'-1] = s[0] == 'one'
记住a只能存放 5678 剩下的你自己推算了下了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
听不清啊
高粉答主

2019-04-18 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部

追问
求详细解答
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f2de437
2019-04-17 · 超过19用户采纳过TA的回答
知道答主
回答量:547
采纳率:22%
帮助的人:28.2万
展开全部
我认识的,然后如节日节日就节日节日就会如如如如解放后大家好哦是so is his公司是事实似乎四十十四黑黑的事实上给公司实施高度公司实施故事告诉事故事故事是个男的还是女的唱的人志坚决斗鱼传奇大结局剧情分集成绩
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式