首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。此处有一个很奇怪的车牌号,它是一个4位十进制数,是某一个数的平方数,且这4个数字从右至左一个比一个大。程序的功能是把这个车牌号找出来,部分程序已
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。此处有一个很奇怪的车牌号,它是一个4位十进制数,是某一个数的平方数,且这4个数字从右至左一个比一个大。程序的功能是把这个车牌号找出来,部分程序已
admin
2018-10-20
32
问题
使用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://jikaoti.com/ti/J1a0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是【】。#include<stdio.h>main(){inta=2,b=3,c=4;a*=16+(b++)-(++c);Printf("%d",a);}
现有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向—个链表中连续的三个结点。 street node { char data; struct node *next; } *p,*q
下面程序段的运行结果是()。#include<stdio.h>voidmain(){charstr[]="ABC",*p=str;pfintf("%d\n",*(p+3));}
以下函数值的类型是()。fun(floatx){floaty;y=3*x-4;returny;}
运行以下程序后,如果从键盘上输入6514<回车>,则输出结果为______。main(){intm,n;printf("Enterm,n:");scanf("%d%d",&m,&n);while(m!
有以下程序main(){intk=5,n=0;do{switch(k){case1:case3:n+=1;k--;break;default:n=0;k--;case2:cas
有如下说明:inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是______。
设函数fun的定义形式为:voidfun(charch,floatx){}则以下对函数fun的调用语句中,正确的是______。
随机试题
2013年10月1日,甲公司经批准在全国银行间债券市场公开发行10000万元人民币短期融资券,期限为1年,票面利率为5%,每张面值为10元,分次付息、到期一次还本。甲公司将该短期融资券指定为以公允价值计量且其变动计入当期损益的金融负债。该短期融资券的交易费
关于工程质量监督手续的办理,下列说法正确的是()。
患儿童某,男,9岁,上颌多个牙龋坏、脱落,要求治疗。检查:口腔卫生差,左右上Ⅵ缺失,Ⅴ残根,根尖外露,左右上6无龋。间隙管理最好采用
丙氨酸一葡萄糖循环的主要生理意义是
大型电子计算机房选择火灾探测器时,应选用:(2009,120)
下列措施中,用于防范施工合同主体纠纷的是()。
【背景资料】某事业单位全额使用国拨资金建设一片试验基地。为选择施工单位,该事业单位作为招标人委托了一家具备相应资质的招标代理机构负责招标事宜。招标工作分为三个标段进行,招标文件于2014年3月1日开始发售,投标截止时间为2014年3月25日10:
张某为一企业法定代表人,2006年取得以下收入:(1)该企业实行年薪制,张某每月发放工资3000元,年终效益工资收入为64000元;(2)转让自用小汽车一辆,原价150000元,合同标明转让价160000元;(3)为改善住房条件,7
调制解调器(Modem)的作用是______。A)将数字脉冲信号转换成模拟信号B)将模拟信号转换成数字脉冲信号C)将数字脉冲信号与模拟信号互相转换D)为了上网与打电话两不误
Extraordinarycreativeactivityhasbeencharacterizedasrevolutionary,flyinginthefaceofwhatisestablishedandproducing
最新回复
(
0
)