首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中
admin
2015-11-25
55
问题
请编写函数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(“%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的作用是将字符串转换成长整型数,它是一个库函数。
转载请注明原文地址:https://www.kaotiyun.com/show/zXDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
设在主函数中有以下定义和函数调用语句,且fun函数为void类型;请写出fun函数的首部【】,要求形参名为b。main(){doubles[10][22];intn;…fun(s);
有以下程序段charch;intk;ch=’a’;k=12;printf("%c,%d,",ch,ch,k);printf("k=%d\n",k);已知字符a的ASCII码值为97,则执行
现有两个C程序文件T18.c和myfun.c同在TC系统目录(文件夹)下,其中T18.c文件如下:#include#include"myfun.c"main(){fun();printf("\n");}myf
对于下述程序,在方式串分别采用"wt"和"wb"运行时,两次生成的文件TEST的长度分别是#includevoidmain(){FILE*fp=fopen("TEST",);fputc(′A′,fp);fputc(′\n′,fp);
若变量已正确定义并赋值,以下符合C语言语法的表达式是
已有定义:charc;,程序前面已在命令行中包含ctype.h文件,不能用于判断c中的字符是否为大写字母的表达式是
源程序的文档化不包括()。
用筛选法可得到2~n(n
用筛选法可得到2~n(n
随机试题
简述公证机构独立行使公证职能的意义。
下列检查结果中不符合代谢性碱中毒的是
关于中间葡萄膜炎,下列哪项叙述是错误的()
呼碱+代碱呼酸+代酸
《中华人民共和国传染病防治法》明确规定的传染病防治方针是
严加管教以督促学困生认真学习是转变他们的最佳途径。()
2010年10月,某区村民陈某夫妇擅自搭建四十余平方米的建筑,用于开设小卖部。区城管中队得知后,既没有交由规划局作出限期拆除决定,也没有通知陈某夫妇自拆,就于2010年12月6日直接将陈某夫妇的违章建筑予以拆除。陈某夫妇不服,找到城管中队质疑:为什么村里有
简述康德的教育思想。
(Ⅰ)设f(x)=4x3+3x2—6x,求f(x),的极值点;(Ⅱ)设有,它的反函数是y=y(x),求y=y(x)的拐点.
结构化设计(SD)方法的基本思想是(14)。
最新回复
(
0
)