首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include <stdio.h> int fun(char s[]) { int n=0; while(*s<=’9’&&*s>=’0’) {n=10*n+*s-’0’;s++;} return
有以下程序: #include <stdio.h> int fun(char s[]) { int n=0; while(*s<=’9’&&*s>=’0’) {n=10*n+*s-’0’;s++;} return
admin
2009-01-15
61
问题
有以下程序: #include <stdio.h> int fun(char s[]) { int n=0; while(*s<=’9’&&*s>=’0’) {n=10*n+*s-’0’;s++;} return(n); } main() { char s[10]={’6’,’1’,’*’,’4’,’*’,’9’,’*’,’0’,’*’}; printf("%d\n",fun(s)); } 程序的运行结果是( )。
选项
A、9
B、61490
C、61
D、5
答案
4
解析
题目fun()函数中while循环的意思是:判断s所指内容是否为数字字符,如果是数字字符,则计算表达式n=10*n+*s-’0’;。其中*s-’0’的作用是将相应的数字字符转换为数值,例如字符’8’减去字符’0’后,得到的结果就是数值8了。n=10*n+的作用是将累计变量n中原来内容乘以10,然后再加上刚转换的数字字符的数值,例如原来n的值为1,*s现在的内容为’2’,那么执行了n=10*n+*s-’0’;语句后,n的值变为12,如果接下来再来一个’8’字符,执行n=10*n+*s-’O’;语句后,n的值就是128了。故不难看出fun()函数的作用是“将数字字符串转换为相应的十进制数值,碰到非数字字符时结束”。从主函数中定义的字符数组s的初始化内容可以看出,fun()函数返回值应该是61。故应该选择C。
转载请注明原文地址:https://kaotiyun.com/show/CFXp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
输入VisualBasic源程序时,若一个命令行中包含两个语句,则两个语句之间的分隔符应使用
设子程序过程定义的首部为:PublicSubS(XAsInteger,YAsSingle)则以下正确的调用形式为
设有如下事件过程:PrivateSubCommand1_Click() Dima a=Array(3,5,6,3,2,6,5,3,5,4,3,9,4,5,6,3,5) x=0 n=UBound(a)
下列有关文件的叙述中,正确的是( )。
窗体上有名称为List1的列表框。以下能够将列表框当前选定的列表项替换为字符串"Basic"的语句是
能够用于标识对象名称的属性是( )。
下面不能在信息框中输出”VisualBasic”的是()。
设有以下定义语句:PrivateTypepointxAsIntegeryAsIntegerEndTypeDimaAspoint下面语句中正确的是
下列数据结构中,能够按照“先进后出”原则存取数据的是
在长度为n的顺序表中查找一个元素,假设需要查找的元素一定在表中,并且元素出现在表中每个位置上的可能性是相同的,则在平均情况下需要比较的次数为()。
随机试题
就其地位而言,大型企业是国家最重要的()
淋巴细胞增多常见于
下列哪些情形应以破坏计算机信息系统罪论处?()
原始会计凭证按照来源的不同,可以划分为()。
下列各项中,不影响存款类金融机构流动比率的业务是()。
山东省最大的峡谷群在()。
在“探究光对草履虫影响“的实验中,用光照射草履虫,观察草履虫的生活状况。这种实验属于()。
A、 B、 C、 D、 C
以下程序的输出结果是()。x=[90,87,93]y=(”Aele”,”Bob”,”lala”)Z={}foriinrange(len(x)):z[x[i]]=y[i]print(Z)
--Whydon’twetakealittlebreak?--Didn’twejusthave_______.
最新回复
(
0
)