首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数maln和其他函数中
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数maln和其他函数中
admin
2019-03-19
15
问题
请编写函数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全国计算机二级
相关试题推荐
在链表的运算过程中,能够使空表与非空表的运算统一的结构是______。
设x、y和z是int型变量,且x=4,y=6,z=8,则下列表达式中值为0的是()。
分析下列程序:#include<stdio.h>main(){int*p1,*p2,*p;inta=6,b=9;p1=&a;p2=&b;if(a<b){p=p1;p1=p2;p2=p;}prin
数据库管理系统提供给用户的接口是()
有如下程序 #include<stdio.h> main() { int a[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16)); int i,s=0; for(i=0;i<4;i++)s+=a[i
下面的程序实现的是指针p所指向的地址的n个数中,求出最大的和最小的数据,请填空。fun(int*p,intn){int*q;intmax,min;max=min=*p;for(q=p;【】
设函数fun的定义形式为voidfun(charch,floatx){…}则以下对函数fun的调用语句中,正确的是
要正确定义并初始化一个数组a,它含有5个元素,则正确的语句是______。
函数sub的功能是根据下面近似分式求π的值。(π*π)/6=1+1/(2*2)+1/(3*3)+…+1/(n*n)现在请在下面的函数中填空,完成求π值的功能。#include"math.h"doublesub(longm
随机试题
大体积混凝土工程施工前,应制定相应的温控技术措施,关于其温控指标应符合规定的表述,不正确的是()。
NX中强制用户在不同的图层中存放不同种类的对象。
不属于有机磷杀虫药中毒的症状是
胃溃疡的好发部位是()。
某种甲虫以土壤中的落叶为主要食物,假如没有这些甲虫,落叶层将严重堆积,最终导致落叶林生长不良。以下分析正确的是()。
马可·波罗曾游历中国,并写下《马可·波罗游记》,《马可·波罗游记》激发了欧洲人对东方的向往。()
下列说法中,不正确的是()。
根据上面的古文填空。(青岛大学2015)“夫离法者罪”中“离”的意思是__________。
动态主机配置协议DHCP是对BOOTP协议的扩充,DHCP与BOOTP的主要区别是DHCP具有(26)机制。DHCP协议支持的中继代理(RelayAgent)是(27),它可以在不同的网段之间传送报文。DHCP具有多种地址分配方案,对于移动终端(比如笔
A、Whetheritisnecessarytoputlabelsonpreparedfoods.B、WhatingredientshouldanutritionlabellistC、Howtogetconsumer
最新回复
(
0
)