首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include<etype.h> #include<stdio.h> long fun(char s[]) {long n;int sign; for(;isspace(*s);s++); sign=(*s==’-’)?-1:1; if(*
有以下程序: #include<etype.h> #include<stdio.h> long fun(char s[]) {long n;int sign; for(;isspace(*s);s++); sign=(*s==’-’)?-1:1; if(*
admin
2020-06-16
16
问题
有以下程序:
#include<etype.h>
#include<stdio.h>
long fun(char s[])
{long n;int sign;
for(;isspace(*s);s++);
sign=(*s==’-’)?-1:1;
if(*s==’+’||*8==’-’)s++;
for(n=0;isdigit(*s);s++)
n=10*n+(*s-’0’);
return sign*n:
}
main()
{char s[]="-26a3";
printf("%d\n",fun(s));
}
程序运行后的输出结果是( )。
选项
A、-263
B、2
C、0
D、-26
答案
D
解析
isspace(c)检查参数c是否为空格字符。若参数c为空格字符,则返回TRUE,否则返回NULL(0)。Isdigit(c)函数检查参数c是否为阿拉伯数字0到9。返回值若为阿拉伯数字,则返回TRUE,否则返回NuLL(0)。fun()函数的第一个for循环判断字符串是否为负号。第二个for循环获取符号后面的数字字符,并将它们转化为整数。遇到了非数字的字符跳出,最后返回数组的结果。因此,可知首先获取负号,紧接着获取数值26,遇到了字符a,跳出返回-26,因此打印的结果是-26。故答案为D选项。
转载请注明原文地址:https://kaotiyun.com/show/UKCp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:#includeintf(intx,inty){return((y—x)*x);}voidmain(){inta=3,b=4,c=5,d;d=f(f(a,b),f(a,c));
请编写函数voidfun(intx,intpp[],int*n),它的功能是:求出能整除x且不是偶数的各整数,并按从小到大的顺序放在pp所指的数组中,这些除数的个数通过形参n返回。例如,若x中的值为30,则有4个数符合要求,它们是1、3
请编写函数fun,该函数的功能是:将M行N列的二维数组中的数据,按行的顺序依次放到一维数组中,一维数组中数据的个数存放在形参n所指的存储单元中。例如,若二维数组中的数据为:3333333344444444
编写函数fun,其功能是:将S所指字符串中除了下标为奇数同时ASCII码值也为奇数的字符之外,其余的所有字符全部删除,串中剩余字符所形成的一个新串放在t所指的数组中。例如,若S所指字符串的内容为“ABCDEFGl2345”,其中字符A的ASCI
给定程序MODI1.C中,fun函数的功能是:删除b所指数组中小于10的数据。主函数中输出删除后数组中余下的数据。请改正函数fun中指定部位的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
下列选项中,能够满足“只要字符串s1等于字符串s2,则执行sT”要求的是()。
下列定义数组的语句中正确的是()。
数据库系统中完成查询操作使用的语言是()。
以下叙述中正确的是()。
在黑盒测试方法中,设计测试用例的主要根据是
随机试题
试述四个单独关税区的法律地位。
中国古代先贤把“在不为人知的情况下,仍能坚守自己的道德信念”称之为()。
建设工程项目的信息不包括()。
下列与生活相关的化学常识中,不正确的是:
在民族自治机关组成人员中,必须由实行区域自治民族的公民担任的职务是()。
飞机以匀速v沿y轴正向飞行,当飞机行至O时被发现,随即从x轴上(x0,0)处发射一枚导弹向飞机飞去(x0>0),若导弹方向始终指向飞机,且速度大小为2v.(1)求导弹运行的轨迹满足的微分方程及初始条件;(2)导弹运行方程.
ADSL是一种宽带接入技术,这种技术使用的传输介质是()。
FTP命令集因系统、版本而异,常用的命令如下。(54)有ASCII和二进制模式。(55)改变计算机的当前目录。(56)open建立同远程计算机的连接,close关闭连接。(57)put传送一个文件到远程计算机,put传送多个文件到远程计算机。(58)get
有以下程序:#include<stdio.h>main(){chara=′H′:a=(a>=′A′&&a<=′Z′)?(a+32):a;printf(″%c\n″,a);}程序运行后的输出结果是()。
主报表是基于______创建的报表。
最新回复
(
0
)