首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“-1234”,则函数把它转换为整数值-1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“-1234”,则函数把它转换为整数值-1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中
admin
2020-06-16
64
问题
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“-1234”,则函数把它转换为整数值-1234。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
1 #include<stdio.h>
2 #include<string.h>
3 long fun(char*p)
4 {
5
6 }
7 void main()
8 {
9 char s[6];
10 long n;
11 printf("Enter a string:\n’’);
12 gets(s);
13 n=fun(s);
14 printf(’’%1 d\n’’,n);
15 }
选项
答案
1 long fun(char*p) 2 { 3 long n=0; 4 int flag=1; 5 if(*p==’0’)/*负数时置flag为-1*/ 6 (p++;flag=-1;} 7 else if(*p==’+’)/*正数时置flaq为1*/ 8 p++; 9 while(8p!=’\0’) 10 {n=n*10+*p-’0’;/*将字符串转成相应的整数*/ 11 p++; 12 } 13 return n*flag; 14 }
解析
if语句的作用是判断该字符串为正数还是负数,while循环的作用是将字符串转成相应的整数。注意:*p是一个字符(例如’9’、’4’),并不是一个数,要将其转成相应的数字需令其减去’0’(不是’\0’),即*p-’0’就得到*p这个字符的相应数字,例如’0’-’0’=0、’8’-’0’=8等。必须在程序的前面加#include
,函数atol的作用是将字符串转换成长整型数,它是一个库函数。
转载请注明原文地址:https://www.kaotiyun.com/show/RYCp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若有以下程序structstu{char*name,gender;intscore;};main(){structstua={NULL,’m’,290),b;a.name=(char*)malloc(10);
定义无符号整数类为UInt,下面可以作为类UInt实例化值的是
下列选项中不属于结构化程序设计原则的是
有以下程序段structst{intx;int*y;}*pt;inta[]={1,2),b[]={3,4};structstc[2]={10,a,20.b};pt=c;以下选项中表达式的值为11的
设有定义:structcomplex{intreal,unreal;}datal={1,8},data2;则以下赋值语句中错误的是
在一个C源程序文件中所定义的全局变量,其作用域为
设二叉树的前序序列为ABDEGHCFIJ,中序序列为DBGEHACIFJ。则后序序列为
以下叙述中正确的是
设有定义:intk=0;以下选项的四个表达式中与其他三个表达式的值不相同的是
在关系模式A(S,SN,D)和B(D,CN,NM)中,关系A的主键是S,关系B的主键是D,则属性D在关系A中称为
随机试题
在下列行政沟通的方式中,属于非语言沟通的有()
OnedayMrs.Greentookseveralpairsofshoestoashoemakertoberepaired.Afterafewdaysshepickedthemupandputthema
年轻前恒牙牙根完全形成在萌出后多长时间
天花粉不具有的功效是
会计职业道德中的“提高技能”,其主要内容包括()。
()是不以营利为目的,带有较强的政策性的贷款。
风险回避者选择资产的唯一标准是预期收益的大小,而不管风险状况如何。()
到图书馆、书店走走,到街头的报刊亭看看,每次都感到纸页文字对生命的一种__________。几年前还在热心地讨论“读书有没有禁区”的问题,我是__________对文化人不应有禁区的,但现在却出现了一种意想不到的无奈:必须__________禁区,否则将是
研究语言产生的单位主要是通过分析()来完成。
ReadthistexttakenfromanarticleaboutAccounting.Choosethebestsentencetofilleachofthegaps.Foreachgap9—14,mar
最新回复
(
0
)