首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在
admin
2021-06-15
50
问题
请编写函数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全国计算机二级
相关试题推荐
数据库管理系统是( )。
以下程序段完全正确的是
软件生命周期中的活动不包括()。
表达式(int)((double)9/2)一9%2的值是()。
关于算法,以下叙述中错误的是
在黑盒测试方法中,设计测试用例的主要根据是
软件生命周期可分为定义阶段,开发阶段和维护阶段。详细设计属于
在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是()。
下面结构体的定义语句中,错误的是
已定义以下函数intfun(int*p){return*p;)fun函数返回值是
随机试题
担任外资金融机构高级管理人员应具备哪些基本条件?
改善急性左心衰竭症状最有效的药物是
建筑工程竣工验收与备案文件《住宅质量保证书、住宅使用说明书》资料来源是()。
根据《招标投标法》的规定,常用的评标方法分为()。
SDH设备的抖动测试项目包括()。
企业的现金清查小组应当在出纳人员不在场的情况下对企业库存现金进行定期或不定期清查。()
凡有时限要求的公文均应标注“紧急”字样。()
人们为了达到某种目的而进行学习的欲望,称为_______。
MaketeIntegratedRuralTransportProjectA)ThedisappointingresultsofmanyconventionalroadtransportprojectsinAfricaled
Ifyouuseacomputeratwork,youprobablyalreadyknowthatalongdayof【B1】______yourscreencanleadtoeye【B2】______,ti
最新回复
(
0
)