首页 > 全部 > 二级C语言 > 二级C语言程序填空题专项强化真题试卷6

二级C语言程序填空题专项强化真题试卷6

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

二级C语言程序填空题专项强化真题试卷6

程序填空题

1.使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。函数fun根据所给n名学生的成绩,计算出所有学生的平均成绩,把高于平均成绩的学生成绩求平均值并返回。

例如,若有成绩为:50,60,70,80,90,100,55,65,75,85,95,99,则运行结果应为:91.5

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

注意:源程序存放在文件BLANK1.C中,不得增行或删行,也不得更改程序的结构!

#include<stdio.h>

#pragrna warnirig(disable:4996)

double fun(double x[],int n)

{int i,k=0;

double avg=0.0,sum=0.0;

for(i=0;i<n;i++)

avg+=x[i];

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

avg/=【1】

for(i=0;i<n;i++)

if(x[i]>avg)

{

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

【2】+=x[i];

k++;

}

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

return【3】

}

main()

{double score[12]={50,60,70,80,90,100,55,65,75,85,95,99};

double aa;

aa=fun(score,12);

printf(\\

(1)n

(2)sum

(3)sum/k

解析:填空1:fun()函数有两个参数,第一个为数组x,第二个为数组元素个数n,首先利用第一个for循环将传入的所有数组元素加起来存入变量avg中,因为求的是平均值,所以需要除以元素个数,所以该空填数组元素个数n。答案为n。

填空2:第二个for循环将数组中每个元素值与平均成绩进行比较,把高于平均值的元素值加起来以便后期求其平均,此时需要一个变量用来存放高于平均成绩的元素总和,所以该空填sum。答案为sum。

填空3:变量k的作用为统计高于平均成绩的元素个数,因为题目要求把高于平均成绩的学生成绩求平均值并返回,所以用高于平均成绩的分数总数除以元素个数,所以该空填sum/k。答案为sum/k。

2.给定程序中,函数fun的功能是:调用随机函数产生20个互不相同的整数放在形参a所指数组中(此数组在主函数中已置0)。

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

注意:部分源程序在文件BLANKl.C中。不得增行或删行,也不得更改程序的结构!

试题程序:

#include

#include

#define N 20

void fun(int*a)

{ int i,x,n=0;

x=rand()%20;

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

while(n<【1】)

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

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

if(X==a[i])

【2】;

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

if(i==【3】)

{a[n]=x;n++;}

x=rand()%20;

}

}

main()

{int x[N]={0},i;

fun(x);

printf(\\

【1】:N或20

【2】:break

【3】:n

解析:【1】:变量n用于存储数组的下标,要通过while语句对数组进行赋值,数组的容量为20,因此循环条件应为n<20。

【2】:通过一个for循环判断x是否与数组中已存的元素重复,若重复则跳出for循环。

【3】:若for循环是由break语句结束的,则x与数组中的元素重复,此时i必然小于n;若for循环是因为循环变量i递增到某值,而不再满足循环条件结束的,说明x的值与数组中的元素不重复,则此时i的值等于n。

3.使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的作用是:不断从终端读入整数,由变量a统计大于0的个数,用变量c来统计小于0的个数,当输入0时结束输入,并通过形参pa和pb把统计的数据传回主函数进行输出。

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

注意:源程序存放在BLANK1.C中。不得增行或删行,也不得更改程序的结构!

试题程序:

#include<stdio.h>

void fun(int*px,int*py)

{

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

int【1】

scanf(\\

(1)a=0,b=0,k

(2)(k!=0)

(3)scanf(\\

解析:填空1:下面的scanf函数用到变量k,需要提前定义,在while循环中使用了临时存放正、负数个数的变量a,b,因此也要提前定义。

填空2:根据题意,输入0时结束程序,因此当k!=0时进入循环记录正负数的个数。

填空3:需要不断从终端输入整数,因此在循环体内添加输入操作。

4.给定程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的学号、姓名和3门课的成绩。函数fun的功能是将该学生的各科成绩都乘以一个系数a。

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

注意:部分源程序给出如下。

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

试题程序:

#include

typedef struct

{ int num;

char name[9];

float score[3];

}STU;

void show(STU tt)

{ int i;

printf(\\

(1)STU

(2)score[i]

(3)&std

解析:本题是利用结构体存储学生记录,对记录进行修改并由实参ss返回。

填空1:实参ss是一个结构型指针变量,所以应填STIJ。

填空2:该学生的各科成绩都乘以一个系数a,所以应填score[i]。

填空3:函数的调用,由于函数定义时使用的指针结构型变量,所以应填&std。

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

剩余未完,查看全文
收藏
二级C语言程序填空题专项强化真题试卷6

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号