首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,功能是:判断形参n中的正整数是几位数(输入数据的位数不超过4位),并将结果通过函数值返回。 例如:若输入的数据为123,则输出结果为:输入的数字是3位。 注意:部分源程序存在PROG1.C中,请勿改动主函数main和其他函
请编写函数fun,功能是:判断形参n中的正整数是几位数(输入数据的位数不超过4位),并将结果通过函数值返回。 例如:若输入的数据为123,则输出结果为:输入的数字是3位。 注意:部分源程序存在PROG1.C中,请勿改动主函数main和其他函
admin
2017-11-27
77
问题
请编写函数fun,功能是:判断形参n中的正整数是几位数(输入数据的位数不超过4位),并将结果通过函数值返回。
例如:若输入的数据为123,则输出结果为:输入的数字是3位。
注意:部分源程序存在PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
#include
void NONO();
int fun(int n)
{
}
main()
{int n,place;
do{
printf(”请输入一个4位以内的正整
数:");
scanf("%d",&n);
} while(n<0 ‖ n>9999);
place=fun(n);
printf("输入的数字是%d位
\n",place);
NONO();
}
void NONO()
(/*本函数用于打开文件,输入数据,调
用函数,输出数据,关闭文件。*/
FILE *fp,*wf;
int i,n,place;
fp=fopen("in.dat","r");
wf=fopen("out.dat","w");
for(i=0;i<10;i++)
(fscanf(fp,"%d",&n);
place=fun(n);
fprintf(wf,"%d\n",place);
}
fclose(fp);
fclose(wf);
}
选项
答案
int fun(int n) { int k=0; if (n>999) k=4; else if(n>99) k=3; else if(n>9) k=2; else k=1; return k; }
解析
主函数中首先要定义数据,然后需要手动输入一个用来进行判断的数字,注意数字要不超过4位,见程序代码第14~16行,而且这里为了防止输入时不小心的错误或者是有人故意错误输入而引发的不好的后果,在数据进入fun函数处理之前还要一个while函数来进行判断数据是否合理在进行处理,见程序代码第17行。然后数字进入fun函数,这里很明显会出现四种情况,数字的位数为1位,2位,3位或4位,所以我们用if…else if来区别这四种情况见程序第6~9行,在判断完之后我们就可以返回数字位数k的值然后再到主函数main函数中进行输出处理。
转载请注明原文地址:https://kaotiyun.com/show/anxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
在将E-R图转换到关系模式时,实体和联系都可以表示成【】。
有以下程序#includestmctstu{intnum;charname[10];intage;};voidfun(structstu*p){printf(“%s\n”,P->name);)
以下程序:#include#includemain(){charstr[]=“abcd\n\123Lxab”;printf(“%d”,(str));}运行后的输出结果是(
数据管理技术发展的三个阶段中,()没有专门的软件对数据进行管理。I.人工管理阶段Ⅱ.文件系统阶段Ⅲ.数据库阶段
符合结构化原则的三种基本控制结构是顺序结构、______________和循环结构。
以下程序的定义语句中,x[1]的初值是_________,程序运行后输出的内容是___________。#ineludemain(){intx[]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,
有以下程序:intfl(doub1ea){returna*a;}intf2(intx,inty){doublea,b;a=n(x);b=f1(y);retur
以下选项中,当x为大于1的奇数时,值为0的表达式为()。
已知一个文件中存放若干工人档案记录,其数据结构如下:structa{charnumber[100];intage;floatp[6];};定义一个数组:structan
运行下列程序,若从键盘输入字符“a”,则输出结果是()。charc;c=getchar();if(c>=’a’&&c<=’g’)c=c+4;elseif(c>=’g’&&c<=’z’)c=c-21;
随机试题
《现代汉语词典》(商务印书馆出版)属于()
Internet上使用的网络协议是基于________________协议。
支持:ITP诊断的是()(2005年)
当事人订立的损害社会公共利益的合同,应从( )时起没有法律约束力。
()是《巴塞尔新资本协议》的第三支柱。
2016年7月31日,甲公司发现2015年漏记一项长期股权投资的减值,该项长期股权投资是甲公司对A公司的具有控制权的投资,长期股权投资账面余额为1080万元,以前未计提减值准备,2015年12月31日,A公司财务状况出现严重恶化。长期股权投资的可收回金额为
刑事责任年龄是指法律规定行为人对自己的犯罪行为负刑事责任必须达到的年龄。下列关于刑事责任年龄说法正确的有()。
远程登录之所以能允许任意类型的计算机之间进行通信,是因为()。
OurheadmastertooktheAmericangueststovisitourschool.Ourheadmaster______theAmericanguests______ourschool.
HowtoBuildaStrongTeamSpirit1.Threeprinciplestobuildingateam■Teamworkisbasedon【T1】______【T1】_
最新回复
(
0
)