首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #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
45
问题
有以下程序: #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全国计算机二级
相关试题推荐
对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是()。
设x的初始值为1,并有下面程序片段:Whilex<10x=x+1Wend下面与上述程序片段产生结果不同的是
窗体上有一个名称为Timer1的计时器控件,一个名称为Shape1的形状控件,其Shape属性值为3(Circle)。编写程序如下:PrivateSubForm_Load() Shape1.Top=0 Timer1.Interval=100
数据库设计中反映用户对数据要求的模式是( )。
以下关于方法的叙述中,错误的是
在考生文件夹下有一个工程文件sjt5.vbp,其窗体上有两个标签L1和L2,标题分别为“口令”和“允许次数”;一个命令按钮C1,标题为“确定”;两个文本框名称分别为Text1和Text2。其中Text1用来输入口令(输入时,文本框内容显示“*”),初始内容
在数据库系统中,用户所见的数据模式为
考生文件夹下有工程文件sjt3.vbp,控件及其属性见窗体文件。程序功能为:单击窗体,则先把数据集读入数组arr,再根据用户输入的值删除数组中对应的元素,并提示操作结果。删除元素分为三步完成:首先查找到要删除的元素,其次将其后续元素顺次前移,最后
支持子程序调用的数据结构是
随机试题
护理程序中的第三步是()
以下对于宫外孕的描述正确的是
在注射剂中加入硫代硫酸钠,为排除残存的氧气可通入的气体是
患者男,33岁,尿频、尿痛2天入院。查体:尿道外口有脓性分泌物,涂片见大量革兰阴性咖啡豆形双球菌。有关该病原菌的描述正确的是
妊娠末期出现音哑或失音者,称为
依靠市场分析和证券基本面研究的一种风险相对分散的市场投资理念是()
下列各项中,不属于反映会计信息质量要求的是()。
某市煤矿联合企业为增值税一般纳税人,主要生产开采原煤销售,假定2009年度有关经营业务如下:(1)销售开采原煤13000吨,不含税收入15000万元,销售成本6580万元;(2)转让开采技术所有权取得收入650万元,直接与技术所有权转让有关
知道两个变量的相关给我们提供了()。
最近经常上演的15部歌剧中没有19世纪德国作曲家理查德·魏格纳的作品。虽然作曲家都希望投观众所好,但是魏格纳的作品不常上演并不证明他不受欢迎,而是因为他的作品所需舞台造价太高了。以下哪项最能够支持上述论证的结论?
最新回复
(
0
)