首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。此处有一个很奇怪的车牌号,它是一个4位十进制数,是某一个数的平方数,且这4个数字从右至左一个比一个大。程序的功能是把这个车牌号找出来,部分程序已
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。此处有一个很奇怪的车牌号,它是一个4位十进制数,是某一个数的平方数,且这4个数字从右至左一个比一个大。程序的功能是把这个车牌号找出来,部分程序已
admin
2018-10-20
30
问题
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。此处有一个很奇怪的车牌号,它是一个4位十进制数,是某一个数的平方数,且这4个数字从右至左一个比一个大。程序的功能是把这个车牌号找出来,部分程序已给出。
请编写函数fun,其功能是:将一个4位数的每一位数分离出来,并依次存放在结构体变量成员中,通过函数值返回给主函数。
例如,一个4位数n为2579,则应把2放在res.m3中,把5放在res.m2中,把7放在res.m1中,把9放在res.m0中。
程序正确运行后的输出结果是:No.is1369
注意:部分源程序存在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
#include<stdio.h>
{}include<stdlib.h>
#praqma warning(disable:4996)
struct BITS{int m3,m2,m1,m0;};
Struct BITS fun(int n)
{
Struct BITS res;
/*在这里将函数代码补充完整*/
}
main()
{struct BITS a;
void NONO();
int i=0,n=0;
for(i=32;i<100;i++)
{n=i*i;
a=fun(n);
if(a.m3<a.m2&&a.m2<a.m1&&a.m1<a.m0)
printf("No.is%d\n",n);
}
NONO();
}
void NONO()
{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/
Struct BITS a;
FILE*fp;
int i=0,n=0;
fp=fopen("out.dat","w");
for(i=32;i<100;i++)
{n=i*i;
a=fun(n);
if(a.m3<a.m2&&a.m2<a.m1&&a.m1<a.m0)
fprintf(fp,"No.is%d\n",n);
}
fclose(fp);
}
选项
答案
res.m0=n%10; res.m1=n/10%10; res.m2=n/100%10; res.m3=n/1000; return res;
解析
根据题目要求将一个四位数的个、十、百、千位数提取出来,分别放入res.m0、res.m1、res.m2、res.m3中,首先提取个位数,将数对10取余,所得的结果即为个位数字,将其赋值给res.m0;然后取十位,将该数除以10,因为是int型,进行强制转换,小数点后的数字舍去,则该数的个位数舍去,变为一个三位数(例如2563除以10为256.3,经类型强制转换后变为256),再进行对10取余,得到十位数字,将其赋值给res.m1;然后取百位,将该数除以100,因为是int型,进行强制转换,小数点后的数字舍去,则该数的个位、十位数舍去,变为一个两位数(例如2563除以100为25.63,经类型强制转换后变为25),再进行对10取余,得到百位数字,将其赋值给res.m2;最后取千位,将该数直接除以1000,再进行强制转换后(例如2563除以1000为2.563,经类型强制转换后变为2),所得到的数即为千位数字,将其赋值给res.m3,最后返回该结构体即可。
转载请注明原文地址:https://kaotiyun.com/show/LMxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列程序的输出结果是______。main(){inta=0,b=0,c=0;if(++a>0||++b>0)++c;printf("\na=%d,b=%d,c=%d",a,b,c);}
以下程序运行后输入:3,abcde<回车>,则输出结果是______。#include<string.h>move(char*str,intn){charcemp;inti;temp=str[n-1];f
已知字母A的ASCII码为65,以下程序运行后的输出结果是【】。main(){chara,b;a=’A’+’5’-’3’;b=a+’6’-’2’;printf("%d%c\n",a,b);}
下列程序的运行结果是【】。main(){inti;for(i=1;i<=5;i++)f(i);}f(j){intj;staticinta=1000;auto
有如下说明:inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是______。
以下关于字符串的叙述中正确的是()。
下面函数用来求两个单精度数之和,并通过形参将结果传回,请填空。Voidsub(floatx,noaty,【】z){【】=x+y;}
随机试题
A.仓廪之官,五味出焉B.中正之官,决断出焉C.受盛之官,化物出焉D.相傅之官,治节出焉E.作强之官,伎巧出焉
功似石决明,又能镇惊安神的药物是
A.活跃期延长B.活跃期停滞C.胎头下降延缓D.第二产程停滞E.第二产程延长初产妇,规律宫缩5小时,宫口开3cm,行人工破膜后9小时宫口9cm。为
患儿男,14个月,因“发热、流涕2日”就诊。查体:体温39.7℃,脉搏135次/分。神志清楚,咽部充血,心肺检查无异常。查体时患儿突然双眼上翻,四肢强直性、阵挛性抽搐。引起患儿病情变化的原因,最可能是()
关于混凝土施工缝的留置位置的做法,正确的是()。
按库存在企业中所处状态不同划分,那些已经有一段时间没有需求的商品属于()。
甲股份有限公司(以下简称“甲公司”)为上市公司,其相关交易或事项如下(计算结果保留两位小数)。(1)经相关部门批准,甲公司于2×19年1月1日按面值发行分期付息、到期一次还本的可转换公司债券1000万份,每份面值为100元。可转换公司债券发行价格总额为1
导游服务是一门艺术,它集()艺术于一身,集中体现在导游讲解之中。
有以下程序main(){intsum,pad,pAd;sum=pad=5;pAd=++sum,pAd++,++pad;printf(”%dkn”,pad);)程序的输出结果是
若整型变量a、b、c、d中的值依次为:1、4、3、2。则条件表达式a<b?a:c<d?c:d的值是()。
最新回复
(
0
)