首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中
请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串“一1234”,则函数把它转换为整数值一1234。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中
admin
2015-11-25
30
问题
请编写函数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) { 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://jikaoti.com/ti/eKi0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序运行后的输出结果是【】。#include<string.h>cbar*ss(char*s){char*p,t;p=s+1;t=*s;while(-p){*(p-1)=*p;p
有以下程序:main(){intt=1,i=5;for(;i>=0;i--)t*=i;printf("%d\n",t);}执行后的输出结果是【】。
有以下程序:main(){chars[]="Yes\n/No",*ps=s;puts(ps+4);*(ps+4)=0;puts(s);}程序运行后的输出结果是(选项D中的第一行是空行)___
以下不能正确定义二维数组的选项是______。
有以下程序#include<stdio.h>main(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y)
当变量c的值不为2、4、6时,值也为“真”的表达式是
若变量均已正确定义并赋值,以下合法的C语言赋值语句是
为了使模块尽可能独立,要求
源程序的文档化不包括()。
用筛选法可得到2~n(n
随机试题
十二指肠与胃相连。()
蓝油适用于()刮削。
领导者素质除了政治素质和法律素质之外,还包括
下列选项中不属于全员PR管理内容的选项是()
患者,男,28岁。急性阑尾炎入院。提示阑尾位于盆腔的检查是
槟榔肝镜下的显著病变是
通过填制和审核会计凭证可以保证经济业务事项的真实性、合法性,为账簿记录的正确性打下基础。()
某仓库被盗,甲、乙、丙、丁四人涉嫌被拘审。经过侦破,查明罪犯就是其中的一人。审讯中,四人的口供如下:甲:“不是我盗的。”乙:“是丁盗的。”丙:“是乙盗的。”丁:“是乙在诬陷我。”现已知四人口供中只有一人讲的
互联网+教育
设y=f(x)=(Ⅰ)讨论f(x)在x=0处的连续性;(Ⅱ)求f(x)的极值点与极值.
最新回复
(
0
)