首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是将a和b所指的两个字符串分别转换成面值相同的整数,并进行相加作为函数值返回,规定字符串中只含9个以下数字字符。 例如,主函数中输入字符串”32486”和”12345”,在主函数中输出的函数值为44831。 请在程序的下画线处填
给定程序中,函数fun的功能是将a和b所指的两个字符串分别转换成面值相同的整数,并进行相加作为函数值返回,规定字符串中只含9个以下数字字符。 例如,主函数中输入字符串”32486”和”12345”,在主函数中输出的函数值为44831。 请在程序的下画线处填
admin
2017-02-24
96
问题
给定程序中,函数fun的功能是将a和b所指的两个字符串分别转换成面值相同的整数,并进行相加作为函数值返回,规定字符串中只含9个以下数字字符。
例如,主函数中输入字符串”32486”和”12345”,在主函数中输出的函数值为44831。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:部分源程序在文件BLANK1.C中。不得增行或删行,也不得更改程序的结构!
试题程序:
1 #include<stdio.h>
2 #include<string.h>
3 #include<ctype.h>
4 #define N 9
5 long ctod(char*s)
6 { long d=0;
7 while(*S)
8 if(isdigit(*s)) {
9 /*********found*********/
10 d=d*10+*s-
【1】
;
11 /*********found*********/
12
【2】
;
13 }
14 return d;
15 }
16 long fun(char*a,char*b)
17 {
18 /*********found*********/
19 return
【3】
;j
20 }
21 main()
22 { char s1[N],s2[N];
23 do
24 { printf("Input string s1:");
25 gets(s1);}
26 while(strlen(s1)>N);
27 do
28 {printf("Input string s2:");
29 gets(s2);}
30 while(strlen(s2)>N);
31 printf("The result is:%ld\n",fun(s1,s2));
32 }
选项
答案
(1)’0’ (2)s++或++s (3)ctod(a)+etod(b)
解析
填空1:isdigt(*s)这个函数表示检查*s是否是数字(0~9),d=d*10+*s一?表示的是要把字符串分别转换成面值相同的整数,因此本空应该填写’0’。
填空2:*s所代表的字符串中字符需要一个一个的字符进行转换成整数,因此此空应该填写s++或++s。
填空3:题目要求把转换后的字符进行相加后作为函数的返回值,因此本空应该填写ctod(a)+ctod(b)。
转载请注明原文地址:https://kaotiyun.com/show/50Dp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中,然后输出。请填空。main(){intx[10],a[9],I;for(I=0;I
以下程序的功能是建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为-1时,表示输入结束(链表头结点的data域不放数据,表空的条件是ph->next==NULL),请填空。#includestructlist{intd
以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中,然后输出。请填空。main(){intx[10],a[9],I;for(I=0;I
以下程序的输出结果是【】。#includevoidswap(int*a,int*b){int*t;t=a;a=b;b=t;}main(){inti=3,j=5,*p=&i,
下面程序的运行结果是【】。#include#defineSIZE12main(){chars[SIZE];intI;for(I=0;I
已有定义:charc=′′;inta=1,b;(此处c的初值为空格字符),执行b=!c&&a;后b的值为【】。
下列程序的输出结果是#include"stdio.h"#defineN3#defineM3voidfun(inta[M][N]){printf("%d\n",*(a[1]+2));}main(){inta
下列函数的运行结果是main(){inti=2,p;intj,k;j=i;k=++i;p=f(j,k);printf("%d",p);}intf(inta,intb){intc;if(a>b
若有以下函数首部intfun(doublex[10],int*n)则下面针对此函数的函数声明语句中正确的是
下列函数的运行结果是main(){inti=2,p;intj,k;j=i;k=++i;p=f(j,k);printf("%d",p);}intf(inta,intb){intc;if(a>b
随机试题
既能清热燥湿,又能杀虫、利尿的药物是
患者,女,38岁。患类风湿关节炎多年。现症见低热,关节灼热疼痛红肿,形寒肢凉,阴雨天疼痛加重,得温则舒,舌红,苔白,脉数。其中医治法是()
按建设工程生产组织的特点,一个项目往往由许多参与单位承担不同的建设任务,而各参与单位的( )不同,就形成了不同类型的项目管理。
在招投标活动中,招标工程量清单应由()提供。
( )是希望他人向自己发出要约的意思表示。
黄埔军校
Whydowealongwith75othercountries—alternatebetweenstandardtimeanddaylighttime?Althoughmanypeoplebelieveithasa
表达式Fix(-3.25)和Fix(3.75)的结果分别是( )。
ItispossibleforstudentstoobtainadvanceddegreesinEnglishwhileknowinglittleornothingabouttraditionalscholarlyme
【B1】【B5】
最新回复
(
0
)