兰州理工大学c语言题库81058118
试卷编号:8118
所属语言:C语言
试卷方案:C语言期末模拟练习
试卷总分:100分
共有题型:3种
一、程序填空 共1题 (共计30分)
第1题 (30.0分) 题号:407
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:有五个学生,每个学生有3门课的成绩,从键盘输入以上数
据(包括学生号,姓名,三门课成绩),计算出平均成绩,
设原有的数据和计算出的平均分数存放在磁盘文件"stud"
中。
-------------------------------------------------------*/
#include
struct student
{
char num[6];
char name[8];
int score[3];
double avr;
} stu[5];
main()
{
int i,j,sum;
FILE *fp;
/*input*/
for(i=0;i<5;i++)
{
printf("\n please input No. %d score:\n",i);
printf("stuNo:");
scanf("%s",stu[i].num);
printf("name:");
scanf("%s",stu[i].name);
sum=0;
/***********SPACE***********/
for(j=0;【?】;j++)
{
printf("score %d.",j+1);
scanf("%d",&stu[i].score[j]);
/***********SPACE***********/
sum+=stu[i].【?】;
}
stu[i].avr=sum/3.0;
}
fp=fopen("stud","w");
/***********SPACE***********/
for(i=0;i<5;【?】)
/***********SPACE***********/
if(fwrite(&stu[i],sizeof(【?】),1,fp)!=1)
printf("file write error\n");
fclose(fp);
}
答案:
=======(答案1)=======
j<3
=========或=========
3>j
=======(答案2)=======
score[j]
=======(答案3)=======
i++
=========或=========
++i
=========或=========
i=i+1
=======(答案4)=======
struct student
二、程序改错 共1题 (共计30分)
第1题 (30.0分) 题号:364
/*------------------------------------------------------
【程序改错】
--------------------------------------------------------
功能:用插入排序法将n个字符进行排序(降序)。
提示:插入法排序的思路是:先对数组的头两个元素进行排序,
然后根据前两个元素的情况插入第三个元素,再插入第
四个元素…)。
------------------------------------------------------*/
#define N 81
#include
#include
void fun(char *aa, int n)
{
/**********FOUND**********/
int a ,b;t;
for( a = 1; a
{
t = aa[a]; b = a-1;
/**********FOUND**********/
while((b>=0) and (t>aa[b]))
{
aa[b+1]=aa[b]; b--; }
/**********FOUND**********/
aa[b+1] = t
}
}
main()