首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C代码,填写程序中的空(1)~(5),将解答写入对应栏内。 【说明】 下面程序运行时,对输入的表达式进行计算并输出计算结果。设表达式由两个整数和一个运算符(+或-)构成,整数和运算符之间以空格分隔,运算符可以出现在两个整数之前、之间或
阅读以下说明和C代码,填写程序中的空(1)~(5),将解答写入对应栏内。 【说明】 下面程序运行时,对输入的表达式进行计算并输出计算结果。设表达式由两个整数和一个运算符(+或-)构成,整数和运算符之间以空格分隔,运算符可以出现在两个整数之前、之间或
admin
2021-03-13
44
问题
阅读以下说明和C代码,填写程序中的空(1)~(5),将解答写入对应栏内。
【说明】
下面程序运行时,对输入的表达式进行计算并输出计算结果。设表达式由两个整数和一个运算符(+或-)构成,整数和运算符之间以空格分隔,运算符可以出现在两个整数之前、之间或之后,整数不超过4位,输入的两个整数和运算符都用字符串表示。
例如,输入分别为“25+7”“+25 7”“25 7+”时,输出均为“25+7=32”。
【C代码】
#include
int str2int(char
*
s); //将数字字符串转换为整数
int isOperator(char
*
str); //判断字符串的开头字符是否为运算符
void cal(char op,char a[],char b[]) //将数字串转化为对应整数后进行op所要求的计算
void solve(char a[],char b[],char C[]);
int main()
{
char a[10],b[10],C[10];
scanf(“%s%s%s”,a,b,c);
//输入数据的有效性检测略,下面假设输入数据有效、正确
solve(a,b,C);
return 0;
}
int Str2int(char
*
S)
{
int val=0;
while(
*
s){
val=(1)________+(
*
s-‘0’); //将数字字符串转换为十进制整数
(2)________; //令字符指针指向下一个数字字符
}
return Val;
}
int isOperator(char
*
str)
{
return(
*
Str==‘+’||
*
Str--‘-’);
}
void cal(char op,char a[],char b[])
{
switch(op){
case‘+’:
printf(“%s+%s=%d”,a,b,str2int(a)+str2int(b));
break;
case‘-’:
printf(“%s-%S=%d”,a,b,str2int(a)-str2int(b));
break;
}
}
void solve(char a[],char b[],char C[])
{//解析输入的3个字符串,输出表达式及计算结果
if(isOperator(a)){ //运算符在两个整数之前
cal((3)________);
}
else if(isOperator(b)){ //运算符在两个整数之间
cal((4)________);
}
else { //运算符在两个整数之后
cal((5)________);
}
}
选项
答案
(1)val
*
10或等效形式 (2)s++或++s或S=S+1或s+=1或等效形式 (3)a[0],b,c或等效形式 其中,a[0]可表示为
*
a,b可替换为&b或&b[0],c可替换为&c或&c[0] (4)b[0],a,c或等效形式 其中,b[0]可表示为
*
,a可替换为&a或&a[0],c可替换为&c或&c[0] (5)c[0],a,b或等效形式 其中,c[0]可表示为
*
c,a可替换为&a或&a[O],b可替换为&b或&b[0]
解析
本题考查C程序的基本结构、函数调用及其应用。
函数str2int(char
*
s)的功能是将数字字符串转换为整数数值,以数字串“123”为例,数值123可表示为(((0
*
10+1)
*
10+2)
*
10+3),获得1、2和3的方式为‘1’-‘0’、‘2’-‘0’,和‘3’-‘0’,据此可知空(1)处应填入“val
*
10”。根据注释,空(2)处应填入“s++”或其等效形式。
根据说明和函数main中的数组a、b、c的作用,以及函数solve的形参定义和代码逻辑,空(3)处代码处理参数a为运算符的情况,此时b和c为运算数,因此根据函数cal(char op,char a[],char b[])的定义,空(3)处调用cal时的实参为“a[0],b,c”。空(4)处代码处理参数b为运算符的情况,此时a和c为运算数,因此根据函数cal(char op,chara[],char b[])的定义,空(4)处调用cal时的实参为“b[0],a,c”。空(5)处代码处理参数c为运算符的情况,此时a和b为运算数,因此根据函数cal(char op,char a[],char b[])的定义,空(5)处调用cal时的实参为“c[0],a,b”。
转载请注明原文地址:https://kaotiyun.com/show/t2jZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
打开DOC文档48.doc,有如下表格,欲在空白单元格中计算出整行其他四个单元格的数值之和,应在空白单元格中插入公式(48)。
在Excel的A1单元格中输入函数“=IF(12,1,2)”,按回车键后,A1单元格中的值为()。
计算机使用一段时间后发现,系统启动时间变长,系统响应迟钝,应用程序运行缓慢,为此,需要进行系统优化。系统优化工作不包括___________。
收集数据时,设计调查的问题很重要。此时,需要注意的原则不包括(8)。
在Access2007中,若要想查询所有姓名为2个汉字的学生记录,应在准则中输入______。
在计算机程序设计语言中,可以直接被计算机识别并执行的是______。
请根据网页显示的效果图和网页中的元素说明,将HTML文本中(n)处的解答填入答题纸对应的解答栏内。说明在Ⅲ浏览器中输入常春藤大学招生办公室主页的网址并回车后,网页显示的效果如图5-1所示。HTML文本<html><he
综合布线系统由6个子系统组成,将图1-1中(1)~(6)处空缺子系统的名称填写在答题纸对应的解答栏内。制作交叉双绞线(一端按EIA/TIA568A线序,另一端按EIA/TIA568B线序)时,其中一端的线序如图1-2(a)所示,另一端线序如图1—2
阅读以下说明,回答问题1至问题4。说明某公司A楼高40层,每层高3.3米,同一楼层内任意两个房间最远传输距离不超过90米,A楼和B楼之间距离为500米,需在整个大楼进行综合布线,结构如图1-1所示。为满足公司业务发展的需要,要求为楼内客户机提供数
随机试题
导游服务工作是一项脑力劳动和体力劳动高度结合的工作,其“脑力劳动”主要体现在()。
桑叶须在___________后采集。
海金沙入汤剂宜
A.牙源性B.血源性C.损伤性D.腺源性E.医源性婴幼儿化脓性淋巴结炎常引发什么感染
mol刚性双原子分子理想气体,当温度为T时,其内能为()(式中R为摩尔气体常量,尼为玻耳兹曼常量)。
下列总监理工程师职责中,可以委托给总监理工程师代表的有()。
某房地产开发项目占地8000m2,总建筑面积12000m2,工程抗震设防烈度为8度。施工中主要用水量分别是:混凝土和砂浆搅拌用水、现场生活用水、消防用水,日最大混凝土浇筑量为2000m3。施工中主要用电设施分别是:塔式起重机3台,36×3=108(kW);
按()划分,员工流动可分为个体流动、批量流动、集团流动等。
汉文化三绝是指()。
《马关条约》签订后,三个帝国主义国家联合起来,要求日本将辽东半岛退还给中国。这三国是()。
最新回复
(
0
)