首页 > 全部 > 二级C语言 > 国家二级C语言机试(操作题)模拟试卷351

国家二级C语言机试(操作题)模拟试卷351

本单篇文档共2499字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C语言 章节练习 5764人下载
价格: 1.10 原价:¥7.00
收藏

国家二级C语言机试(操作题)模拟试卷351

程序填空题

1.给定程序中,函数fun的功能是:将形参n中,各位上为偶数的数取出,并按原来从高位到低位的顺序组成一个新的数,并作为函数值返回。

例如,从主函数输入一个整数:27638496,函数返回值为:26846。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

#include

unsigned long fun (unsigned long n)

{ unsigned long x=0,s,i; int t;

s=n;

1=____1____ ;

while ( ____2____ )

if (t%2==0) {

}

s=s/10;

}

return x;

}

main ()

{ unsigned long n=—1;

while (n>99999999 ||n<0)

{ printf(\\

(1)1

(2)s

(3)1*10

解析:函数fun的功能是将形参n中,各位上为偶数的数取出,组成新数。

第一空:由“ifft%2==0){x=x+t*i; i=____3____;}”可知,如果t是偶数,那么t添加到返回值里面,比如第一次得到t=2,那么x=0+2*1;下一次得到了t=4,那么此时x的值应该是2+2*10;再下一次得到t=2,那么x=22+2 *100,即x的值是在上一次值的基础上加上新得到的值乘以其权值,因此i是代表权值。第一空处是初始化i,第一次进入if语句时,x是个1位数,此时权值i应为1,故第一空处应为“1”,

第二空:第二空处是填循环的终止条件,在循环体内,s每次缩小10倍,在最后一次进入循环的时候,s是一个一位数,s/10之后s变成0,下次就不应该进入while循环,因此while循环的终止条件是s不为0,故第二空处为“s”或“s! =0”。

第三空:由第一空的分析可知权值i是在上一次的基础上增加10倍,故第三空处应为“i*10”。

程序修改题

2.给定程序MODI1.C中函数fun的功能是:输出M行M列整数方阵,然后求两条对角线上元素之和,返回此和数。

请改正程序中的错误,使它能得出正确的结果。

注意:不要改动mam函数,不得增行或删行,也不得更改程序的结构!

#include

#define M 5

int fun(int nr int xx[] [])

{ int i,j,sum=0;

printf(\\

(1) int fun (int n,int xx[] [M])

(2) printf(\\

解析:函数的功能是求两条对角线上各元素之和。

(1)第一个标识下fun函数的定义中对于二维数组的定义在原题中并没有给出空间,所以将“int fun(int n,int xx[][])”改为“int fun(int n,int xx[][M])”。

(2) fun函数中n是mt型,C语言输出语句中整型应该是%d,所以第二个标识下“printf(\\

程序设计题

3.函数fun的功能是:将a、b中的两个两位正整数合并形成一个新的整数放在c中。

合并的方式是:将a中的十位和个位数依次放在变量c的千位和十位上,b中的十位和个位数依次放在变量c的个位和百位上。

例如,当a=45,b=12。

调用该函数后,c=4251。

注意:部分源程序存在文件PROG1.C中。数据文件IN.DAT中的数据不得修改。

请勿改动主函数mam和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

#include

void fun (int a, int b, long *c)

{

}

void NONO ()

{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */

FILE *rfr *wf ;

int i,a,b ; long C ;

rf= fopen (\\

*c= (a/10) *1000+ (b%10)* 100+ (a%10) *10+ (b/10);

解析:(1)分解两位数的正整数n的个位和十位数,可用n%10和n/10实现。

(2)设x0、x1、x2、x3为一位数,则x0、x1×10、x2×100、x3×1000,可以分别使x0、x1、x2、x3构成个、十、百,千带权数,而x0+x1×1 0+x2×100+x3×1000构成四位数。本题最多只考虑四位数。

本文档预览:3600字符,共2499字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级C语言机试(操作题)模拟试卷351

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号