首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数maln和其他函数中
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数maln和其他函数中
admin
2019-03-19
62
问题
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。
注意:部分源程序给出如下。
请勿改动主函数maln和其他函数中的任何内容,仅在函数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 f1ag =1; if(*p==’一’)/*负数时置f1ag为一1*/ {p++;f1ag=一1;} else if(*p==’+’)/*正数时置f1ag为1*/ p++; while(*p!=’\0’) {n =n* 10+*p 一’0’;/*将字符串转成相应的整数*/ p++; } return n*f1ag; }
解析
if语句的作用是判断该字符串为正数还是负数,while循环的作用是将字符串转成相应的整数。
注意:*p是一个字符(例如‘9’、‘4’),并不是一个数,要将其转成相应的数字需令其减去’0’(不是’\0’),即*p一’0’就得到*p这个字符的相应数字,例如’0’一’0’=0、’8’一’0’=8等。必须在程序的前面加#include < stdlib.h >,函数atol的作用是将字符串转换成长整型数,它是一个库函数。
转载请注明原文地址:https://kaotiyun.com/show/NBRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列程序的输出结果是__________。main(){inta=2,b=4,c=6;intp1=&a,*p2=&b,*p;*(p=&c)=*p1*(*p2);printf("%d
以下程序的输出结果是__________。#includevoidswap(int*a,int*b){int*t;t=a;a=b;b=t;}main(){inti=3,j
已定义c为字符型变量,则下列语句中正确的是
下面对C语言的描述中,正确的是
若程序中已包含头文件stdio.h,以下选项能正确运用指针变量的程序段是()。
下列的程序用来输出两个字符串前7个字符中对应相等的字符及其位置号,程序空白处应该填写的是()。#include<stdio.h>main(){chars1[]="chinese",s2[]="japnese";
Jackson方法是一种面向______的结构化方法。
有如下程序;intfunc(inta,intb){return(a+b);}main(){intx=2,y=5,z=8,r;r=func(func(x,y),z);pr
以下程序段打开文件后,先利用fseek函数将文件位置指针定位在文件末尾,然后调用ftell函数返回当前文件位置指针的具体位置,从而确定文件长度,请填空。FILE*myf;longf1;myf=【】("test.t""rb");
下面的程序实现的是指针p所指向的地址的n个数中,求出最大的和最小的数据,请填空。fun(int*p,intn){int*q;intmax,min;max=min=*p;for(q=p;【】
随机试题
急性白血病与骨髓增生异常综合征的重要区别是
左氧氟沙星具有哪些结构特征和作用特点
根据《农村土地承包法》规定,下列关于机动地问题,表述不正确的是():
根据《建筑抗震设计规范》(GB50011—2001)。当(见图)()时属于结构平面不规则。
现行财务制度规定,施工企业计提折旧一般采用()。
【给定资料一】如今在中国常看到这样的场景:出门上班前,通过打车软件叫一辆车;坐在车上,通过手机浏览最新最火的帖子;下班回家太累不想做饭,通过APP请一位厨艺达人到家做饭;消费者在支付终端前摇晃手机或通过扫描二维码完成交易……调查显示,中
朝鲜历史上最大的一次农民战争是()。
Americanethnocentricity,whilemanifestingeneralattitudestowardothersis,ofcourse,temperedsomewhatbytheveryheterog
算法的时间复杂度是指()。
Thispassageismostprobablyintendedfor
最新回复
(
0
)