首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中
admin
2018-03-28
39
问题
请编写函数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) { 10ng 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>,函数awl的作用是将字符串转换成长整型数,它是一个库函数。
转载请注明原文地址:https://kaotiyun.com/show/qxxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序main(){chars[]="Yes\n/No",*ps=s;puts(ps+4);*(ps+4)=0;puts(s);}程序运行后的输出结果
若要用函数fopen打开一个新的二进制文件,该文件要既能读也能写,则应以哪种方式打开文件()。
有以下程序:#definef(x)(x*x)main(){inti1,i2;i1=f(8)/f(4);i2=f(4+4)/f(2+2);printf("%d,%d\n",i1,i2);
若有以下程序 intf(intx,inty) { return(y-x)*x;} main( ) { inta=3,b=4,c=5,d; d=f(f(3,4),f(3,5)); printf("%d\n",d);
若有以下定义和语句,sizeof(a)的值是【】,sizeof(a.share)的值是【】。structdate{intday;intmonth;intyear;union{intshare1;
排序是计算机程序设计中的一种重要操作,常见的排序方法有插入排序、【】和选择排序等。
数字字符0的ASCII值为48,运行以下程序的输出结果是()。main(){chara=’1’,b=’2’;printf("%c,",b++);printf("%d\n",b-a);}
当执行以下语句后,函数strlen(str)返回的值是() staticcharstr[10]={”Change"};
以下叙述中正确的是
随机试题
根管治疗的非适应证是
招标人向建设行政主管部门办理申请招标手续的备案文件应包括( )。
双代号时标网络计划是以( )为尺度编制的网络计划。
一般事故由项目法人组织()进行调查。
政府发行长期债券,就可以在较长时期内占用国债认购者的资金,而不管国债认购者是否在国债期限内转让。()
个人贷款的还款方式有()
把下面六个图形分为两类,使每一类图形都有各自的共同特征或规律,分类正确的一项是()。
2008年一季度企业家信心指数比上季度上升最少的行业是()。
A、Theycostmorethantheuniversitycourses.B、Thecoursesincludebothstudyandwork.C、Youcangetrealworkingexperiencef
Ithasbeenabout______yearssincemansucceededinmakingrain.Whowasthefirstrainmakersucceedinginmakingrain?
最新回复
(
0
)