C语言题目 求助
答案是C,求解析一下。第二个问题,continue不是直接结束当前循环吗,为什么还要执行下面的printf函数,把continue改为break还是会执行一遍printf...
答案是C ,求解析一下。
第二个问题,continue不是直接结束当前循环吗,为什么还要执行下面的printf函数,把continue改为break 还是会执行一遍printf函数才跳出循环。 基础不是很好,麻烦了。 展开
第二个问题,continue不是直接结束当前循环吗,为什么还要执行下面的printf函数,把continue改为break 还是会执行一遍printf函数才跳出循环。 基础不是很好,麻烦了。 展开
2个回答
展开全部
四个选项中,一共有两个重要因素,只有C项把这两个都做对了,
变量s的初始化应该放在循环外,A项将s=1放在do循环内部了,这样会造成每次循环都将s重新变成1,得不到正确结果。B项也是一样的错误。
变量s的初始值应该是1,只有这样,第一次循环执行s=s*i;时才会得到数值1,从而正确继续循环直到乘以10。D项s=0,这样第一次循环s=s*i;时s为0,而0乘任何数都为0,无论后续循环中怎么乘,都只能得到0了,所以错误。
综上:A项错在s的初始化放在了循环内部,D项错在s的初始值不能为0,B项两个错误都犯了。只有C项正确。
更多追问追答
追问
十分感谢,现补充了第二个问题,请帮忙再解答一下吧,基础不太好,麻烦了。
追答
问题二 没有看到代码,你把代码发出来
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询