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

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

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

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

程序填空题

1. 给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用-1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和WriteText实现。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

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

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

#include

#include

#include

void WriteText(FILE *) ;

void ReadText(FILE *);

main ()

{FILE *fp;

if( (fp=fopen(\\

(1)*fw

(2)str

(3)str

解析:第一空:此处是补充函数参数名,参数类型已知是FILE文件指针,“fputs(\\

程序修改题

2. 给定程序MODI1.C中函数fun的功能是:从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在t中。高位仍在高位,低位仍在低位。

例如,当s中的数为:7654321时,t中的数为:7531。

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

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

#include

/************found************/

void fun (long s, long t)

{ long sl=10;

*t = s % 10;

while (s > 0)

{ s = s/100;

*t = s%10 * s1 + *t;

/************ found************/

sl = sl*100;

}

}

main ()

{ long s, t;

printf(\\

(1)void fun (long s, long *t)

(2)s1=s1*10;

解析:(1)根据“*t=s%10”判断,t应该是个指针变量,所以“void fun(long s,long t)”语句中的t只需改为“void fun(long s,long *t)”。

(2)分析函数内的循环过程可知s1的用途是每次将*t扩大,记录每次得到的奇数位的数字的权值,s1的权值每次增加1位,因此,第二个标识下应该是“s1=s1*10;”。

程序设计题

3. 学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把分数最低的学生数据放在b所指的数组中,注意:分数最低的学生可能不止一个,函数返回分数最低的学生的人数。

注意:部分源程序在文件PROG1.C文件中。

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

#include

#define N 16

typedef struct

{ char num[10];

int s;

} STREC;

int fun(STREC *a, STREC *b)

{

}

main ()

{STREC

s[N]={{\\

int i,j=0,min=a[0].s;

for(i=0; i<N; i++){

if(min>a[i].s){

j=0;b[j++]=a[i];min=a[i].s;

}

else if(min==a[i].s)

b[j++]=a[i];

}

return j;

解析:(1)要把最低分数的学生数据放在数组中,首先求出最低分数,再使用一个for循环把所有的成绩进行比较,找出最低的分数来。

(2)找出所有与最低分数相等的学生,并将最低分数的人数累加。

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号