首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,请编函数fun,其功能是将一个数字字符串转换成与其面值相同的长整型整数。可调用strlen函数求字符串的长度。例如:在键盘输入字符串
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,请编函数fun,其功能是将一个数字字符串转换成与其面值相同的长整型整数。可调用strlen函数求字符串的长度。例如:在键盘输入字符串
admin
2018-08-11
36
问题
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,请编函数fun,其功能是将一个数字字符串转换成与其面值相同的长整型整数。可调用strlen函数求字符串的长度。例如:在键盘输入字符串2345210,函数返回长整型数2345210。
注意:部分源程序存在PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun指定的部位填入所编写的若干语句。
试题程序:
#include<stdio.h>
#include<string.h>
void NONO();
long fun(char*s)
{
}
main()
{char s[10];long r;
printf("请输入一个长度不超过9个字符的数字字符串:");
gets(s);
r=fun(s);
printf("r=%ld\n",r);
NONO();
}
void NONO()
{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/
FILE*fp,*wf;
int i;long r;
char s[10],*p;
fp=fopen("in.dat","r");
wf=fopen("out.dat","w");
for(i=0;i<10;i++){
fgets(s,10,fp);
P=strchr(s,’\n’);
if(p)*p=0;
r=fun(s);
fprintf(wf,"%ld\n",r);
}
fclose(fp);
fclose(wf);
}
选项
答案
long fun(char*s) { int i,len; long sum=0; len=strlen(s); for(i=0;i<len;i++) { sum=sum*10+*s-’0’; s++; } return sum; }
解析
要把一个数字字符转为相应的数字,只要用它的ASCII码减去48即可。要把数字字符串转为相应的数字,则要从左到右依次取出字符转为相应数字,乘10再加上下一位数字。
转载请注明原文地址:https://kaotiyun.com/show/Ljxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<stdio.h>main(){FILE*fp;inti,k,n;fp=fopen("data.dat","w+");for(i=1;i<6;i++){fprimtf(fp,"%
有以下程序:main(){chark;inti;for(i=1;i<3;i++){scanf("%c",&k);switch(k){
下列程序运行后的输出结果是______。main(){inta=2,b=-1,c=2;if(a<b)if(b<0)c=0;elsec++;printf("%d\n",c);
以下程序运行后的输出结果是【 】。main(){charc;intn=100;floatf=10;doublex;x=f*=n/=(c=50);printf("%d%f\n",
有下列程序: voidsort(inta[],intn) {inti,j,t; for(i=0;i<n—1;i++) for(j=i+1;j<n;
以下程序的输出结果是_______。main(){inti;for(i=1;i<6;i++){if(i%2)(printf("#");continue;}printf("*");
设函数fun的定义形式为:voldfun(charch,floatx){……}则以下对函数fun的调用语句中,正确的是()。
若输入字符串:abcde↓,则以下while循环体将执行【】次。while((ch=getchar())==’e’)printf("*");
语句:x++;、++x;、x=x+1;、x=1+x;,执行后都使变量x中的值增1,请写出一条同一功能的赋值语句(不得与列举的相同)【】。
有一函数:以下程序段中不能根据x值正确计算出y值的是
随机试题
简述廷安整风运动的主要内容。
FromthewayyouaretalkingICanonly______theconclusionthatyouarenottheslightestbitinterestedintheproject.
患者,男性,62岁,心慌、气短、面色发绀,长期服用洋地黄类药物,护士在每次发药前应特别注意的是
用于胃肠道造影的对比剂是
为提高脓毒血症的血培养阳性率,最好在何时抽血作细菌培养
夏柯(Charcot)三联征是指()。
甲公司2007年年末“应收账款”借方余额为200万元,“坏账准备”贷方余额为20万元。2008年确实无法收回的应收款项经批准确认的坏账损失为5万元,收回以前年度已确认并转销的应收账款6万元。2008年年末“应收账款”余额为250万元,经减值测试,甲公司决定
A、手表B、词典C、行李箱D、照相机A
Peterlivedwithhisparents.Onenighthefoundthatthetablebesidethestovewasburning.
A、Theywerebothbusydoingtheirownwork.B、Theywaitedforeachotheratdifferentplaces.C、Theywenttothestreetcornera
最新回复
(
0
)