首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中
admin
2016-08-16
52
问题
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include
#include
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*c/ {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
,函数atol的作用是将字符串转换成长整型数,它是一个库函数。
转载请注明原文地址:https://kaotiyun.com/show/YaNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<iostream>#include<cstdlib>usingnamespacestd;intmain(){intarraysize;
以下各项中可以减少相同数据重复存储现象的是()。
类test的析构函数是【】。
执行下列语句后,c3中的值为【】 intc1=1,c2=2,c3;c3=1.0/c2*c1;
表达式10>5&&6%3的值是
有以下程序 #include"iostream.h" voidmain() { inti=1,j=1,k=2; if((j++||k++)&&i++) cout<<i<<","<<j<<","<<k;
下列叙述中,不属于数据库系统的是
对虚函数的调用有两种方式:【】和【】。
随机试题
A.滋阴润肺B.滋阴降火C.益气养阴D.滋阴补阳气阴耗伤型肺痨的治法是
A.第一心音增强B.第一心音减弱C.第一心音分裂D.肺动脉瓣区第二心音增强伴分裂甲状腺功能亢进()
在检测梅毒的间接免疫荧光抗体试验中,所涉及的反应物有
本质安全化原则可以应用于()中。
某单位组织“重走长征路,再励坚强志”活动。计划重走长征路,实地考察土地革命时期中央红军的历史足迹。正确的路线是:
由于近期的干旱和高温,导致海湾盐度增加,引起了许多鱼的死亡。虾虽然可以适应高盐度,但盐度高也给养虾场带来了不幸。以下哪项如果为真,能够提供解释以上现象的原因?
()是美国获得世界声誉的最杰出的民主诗人、散文作家,曾写有《草叶集》。
z-xy
PassiveSmokingisWorkplaceKillerPressuremountedonBritainonMondaytotakeactionon(1)smokingwithnewresearchshowing
A、 B、 C、 D、 B
最新回复
(
0
)