首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写一个函数fun(),它的功能是将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转为整数的函数)。 例如,若输入字符串“-1234”,则函数把它转换为整数值 -1234。 注意:部分源程序给出如下。 请勿改动主函数main
请编写一个函数fun(),它的功能是将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转为整数的函数)。 例如,若输入字符串“-1234”,则函数把它转换为整数值 -1234。 注意:部分源程序给出如下。 请勿改动主函数main
admin
2010-05-05
39
问题
请编写一个函数fun(),它的功能是将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转为整数的函数)。
例如,若输入字符串“-1234”,则函数把它转换为整数值 -1234。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include <stdio.h>
#include <string.h>
long fun(char *p)
{
}
main ( )
{
char s[6];
long n;
printf("Enter a string:\n");
gets(s);
n=fun(s);
printf("%ld\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()的作用是将字符串p转成长整型数,它是一个库函数。
转载请注明原文地址:https://jikaoti.com/ti/jSkiFFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
人类科技发展的历程中,先后出现了下列重大科技事件:①电子计算机;②能量守恒定律;③有线电话;④航天器。按时间先后顺序排列正确的是()。
下列人物与研究成果对应错误的一项是()。
剧烈运动后,人们常常满脸通红,大汗淋漓,这主要是因为皮肤的()功能。
2014年种种信号和变化,表明我国经济发展出现了趋势性、不可逆的新常态。经济进入新常态,是30多年高速发展的必然结果,是客观经济规律作用的体现。“新常态经济”的主要特征是()。
法院审理一起受贿案时,被告人甲称因侦查人员刑讯不得已承认犯罪事实,并讲述受到刑讯的具体时间。检察机关为证明侦查讯问程序合法,当庭播放了有关讯问的录音录像,并提交了书面说明。关于该录音录像的证据种类,下列哪一选项是正确的?()
我国境内的几处晚期猿人按时间顺序由远及近排列正确的是()。
某县人民法院审理一民事案件过程中,要求县移动通信营业部提供某通信用户的电话详单。根据我国宪法规定,下列说法正确的是()。
中国古代有个统一王朝,它最先在全国范围内推行了郡县制.建立起中央集权制的政治模式。据此判断,这个王朝是()。
随机试题
在行政诉讼中,人民法院判决驳回原告诉讼请求的情形有()。
用于鉴定挥发油组成成分的有效方法是
患者,女性。绒毛膜癌,出现剧烈头痛、喷射性呕吐、偏瘫。家属询问护士可能的原因,护士正确的回答是
惠明公司在甲银行开立基本存款账户。2011年7月,惠明公司发生的结算业务如下:(1)7月3日,惠明公司与乙银行签订短期借款合同后,持相关开户资料向乙银行申请开立了一般存款账户。(2)7月8日,惠明公司派出出纳王某到乙银行购买现金支票并办理提取现金业务。(3
国家对个人的外汇管理按照交易主体的不同,分为对境内个人的外汇管理和对境外个人的外汇管理。下列选项中,属于境内个人的有()。
以某个狭窄的购买者群体为焦点,通过为这个小市场上的购买者提供能够比竞争对手更能满足购买者需求的有特色定制产品或服务,以战胜竞争对手的业务层战略是()。
教育法律关系是法律关系的一种,也是教育关系的一种。()
单位要举办走群众路线的教育活动座谈会。主要对象是青年干部,领导让你组织,你怎么做?
下面不属于软件需求分析阶段主要工作的是
A、Inatrain.B、Inacar.C、Inaplane.D、Inaship.C此为地点场合题。
最新回复
(
0
)