首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在
admin
2021-06-15
76
问题
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
#include<string.h>
long fun(char*P)
{
}
void main()
{
char s[6];
long n;
printf("Enter a string:\n");
gets(s);
n=fun(s);
printf("%id\n",n);
}
选项
答案
long fun(char*p) { long n=0; int flag=1; if(*p==’-’)/*负数时置flag为-1*/ {p++;flag=-1;} else if(*p==’+’)/*正数时置flag为1*/ p++; while(*p!=’\0’) { n=n*10+*p-’0’;/*将字符串转成相应的整数*/ p++; } return n*flag; }
解析
if语句的作用是判断该字符串为正数还是负数,while循环的作用是将字符串转成相应的整数。注意:*p是一个字符(例如‘9’、‘4’),并不是一个数,要将其转成相应的数字需令其减去’0’(不是’\0’),即*p一’0’就得到*p这个字符的相应数字,例如’0’一’0’=0、’8’一’0’=8等。必须在程序的前面加#include<stdlib.h>,函数atol的作用是将字符串转换成长整型数,它是一个库函数。
转载请注明原文地址:https://kaotiyun.com/show/t0tp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
已知大写字母A的ASCII码是65,小写字母a的ASCII码是97。以下不能将变量c中的大写字母转换为对应小写字母的语句是
以下叙述中正确的是()。
以下四个程序中,完全正确的是
设有定义语句intx[6]={2,4,6,8,5,7},*p=x,i;要求依次输出x数组6个元素中的值不能完成此操作的语句是
设有定义语句intx[6]={2,4,6,8,5,7},*p=x,i;要求依次输出x数组6个元素中的值不能完成此操作的语句是
设变量均已正确定义,若要通过scanf("%d%c%d%c",&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式中正确的是(注:□代表空格字符)
下列各项中不属于软件设计阶段任务的是()。
设循环队列的存储空间为Q(1:50),初始状态为front=rear=50。经过一系列正常的操作后,front-1=rear。为了在该队列中寻找值最大的元素,在最坏情况下需要的比较次数为
定义学生选修课程的关系模式:SC(S#,Sn,C#,Cn,G)(其属性分别为学号、姓名、课程号、课程名、成绩)。则对主属性部分依赖的是
检查软件产品是否符合需求定义的过程称为()。
随机试题
国际债券在国际市场上发行,其计价货币往往是国际通用货币,一般不用______表示。()
患者,男性,自青少年时起,经常有鼻腔堵塞、流涕、不适等症状。在五官科检查时,医生考虑患者可能患鼻炎或鼻窦炎。在讨论中,提出了以下问题。在治疗方法中,可做鼻窦穿刺术的正确路径是
关于神经核描述正确的是()。
结合有关挡土墙的实测关键项目内容,回答下列有关问题。下列有关悬臂式和扶壁式挡土墙的外观鉴定,描述不正确的有()。
项目监理机构的组织形式,应根据()等因素确定。
优化开发区域是指()。
下列符合居民企业核定征收应纳税额计算方法的有()。
关于广义和狭义上的立法,下列说法错误的有
有以下程序#include<stdio.h>voidmain(){intc=0,k;for(k=1;k<3;k++)switch(k){default:c+=k;case2:c++:break;case4:c+=2;break;}p
ExerciseCutsCancerDeathsinMenMenwhoexerciseoftenarelesslikelytodiefromcancerthanthosewho(51)newresearchpubl
最新回复
(
0
)