首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中
admin
2016-08-16
34
问题
请编写函数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>usingnamespacestd;intmain(){inta=5;b=4,c=3,d=2;if(a>b>c)
类test的析构函数是【】。
执行下列语句后,c3中的值为【】 intc1=1,c2=2,c3;c3=1.0/c2*c1;
表达式10>5&&6%3的值是
若运行时给变量x输入12,则以下程序的运行结果是 #include<iostream.h> voidmain() { intx,y; cin>>x; y=x>12?x+lO:x-12; cout<<y; c
数据库系统的核心是
假设fin是一个文件流对象,则关闭文件的语句是【】。
若有以下程序:#include<iostream>usingnamespacestd;voidsub(intx,inty,int*z){*z=y+x;}intmain()
在C++语言中,对函数参数默认值描述正确的是()。
以下程序调用findmax()函数返回数组中的最大值。请填空完成此函数。#include〈iostream〉usingnamespacestd;intfindmax(int*a,intn){int+p
随机试题
可与RF结合的是
缠腰火丹肝经郁热证的用方是缠腰火丹气滞血瘀证的用方是
强心苷类药物中,不属于速效强心苷的药物有
下列说法错误的是( )。
在分析国家风险的方法中,()是综合了对政治社会因素的定性分析和对经济金融因素的定量分析。根据标准化的国家风险评估报告,它结合部分经济统计,对不同国家的贷款风险做出比较。
以下属于理财顾问服务的是()。
材料四:阅读下面的短文。完成76—80题。在地面上,行走是指用双腿克服地球引力,轮流迈步,从一处地面走向另一处地面。但在太空轨道飞行的失重环境中.失重将行走的概念完全搞乱了。在航天器密封座舱中行走,只要用脚、手或身体任何部位触一下舱壁或任何固定的
材料一:党的十六大报告指出:经过全党和全国各族人民的共同努力,我们胜利实现了现代化建设“三步走”战略的第一步、第二步目标,人民生活总体达到了小康水平。必须看到,我国正处于并将长期处于社会主义初级阶段,现在达到的小康还是低水平的、不全面的、发展很不平衡的小康
德国十一月革命
20世纪初期,以孙中山为首的资产阶级革命派与以康有为、梁启超为首的改良派展开了激烈的争论。二者虽然存在着原则性的分歧,但是亦有共通之处()
最新回复
(
0
)