阅读以下C代码,回答问题1和问题2,将解答填入答题纸的对应栏内。 【C代码1】

考试题库2022-08-02  65

问题 阅读以下C代码,回答问题1和问题2,将解答填入答题纸的对应栏内。【C代码1】【问题1】写出【C代码1】运行时分别输入-1331、795的输出结果。【问题2】写出【C代码2】运行时的输出结果。

选项

答案

解析 (1)输入-1331的结果是:
Palindromic number.
a=-1331 b=1331
输入795的结果是:
a=795 b=597
(2)输出结果是:
Passed,points=4
Passed,points=1
Passed,points=1
Passed,points=1
Failed
解析:(1)程序1实现了回文数的判断,首先判断a的正负性,若为负,则temp=-a,若为正,则temp=a,接下来对temp进行逆序输出,将其结果赋给b,如果a绝对值与b相等,即a为回文数,则输出:Palindromic number.;a=a;b=b;否则只输出a=a;b=b。
(2)程序2中主要考察了switch的用法,当case语句中没有出现break时,将会向下继续执行下一条语句,而不会退出switch,因而当case语句中没有break时,执行过程中points被重复赋值。故当“case'A'”执行时,points=4退出,此时输出“Passed,points=4”,而当grade='B'、'C'、'D'时,都执行到“case'D'::points=1;break;”时才退出,故输出了三个“Passed,points=1”;当grade='W'时超出了for循环中grade的范围,不执行这一语句,所以只有当grade='E',输出一句“Failed”。所以最终输出结果为:
Passed,points=4
Passed,points=1
Passed,points=1
Passed,points=1
Failed
转载请注明原文地址:https://tihaiku.com/congyezige/2426433.html

最新回复(0)