C语言:求解试题6,过程详细一点,谢谢
展开全部
首先,看你题目,题目最后输出的代码有错。
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)同理不解释了。
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 剩下的你自己推算了下了
第一组输入 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 剩下的你自己推算了下了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我认识的,然后如节日节日就节日节日就会如如如如解放后大家好哦是so is his公司是事实似乎四十十四黑黑的事实上给公司实施高度公司实施故事告诉事故事故事是个男的还是女的唱的人志坚决斗鱼传奇大结局剧情分集成绩
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |