几道经典的改错题和填空题 有实力的来挑战下吧
程序填空 1/*根据输入的百分制按五分制的成绩输出。0-59为2,60-79为3,80-89为4,90-100为5。*/
main()
{
int score;
char grade;
printf("Please input score:");
scanf("%d",&score);
/***********SPACE***********/
if(【?】)
grade='5';
else if(score>79)
grade='4';
else if(score>59)
grade='3';
else
/***********SPACE***********/
【?】;
printf("grade is %c",grade);
}
【程序填空】2
---------------------------------------------------------
题目:以下程序的功能是打印以下图形。
*****
*****
*****
*****
*****
-------------------------------------------------------*/
main ( )
{
/***********SPACE***********/
【?】 char a[5][9];
int i,j;
for (i=0;i<5;i++)
/***********SPACE***********/
for(j=i; 【?】;j++)
a[i][j]='*';
for(i=0;i<5;i++)
{
for(j=0;j<9;j++)
/***********SPACE***********/
printf("%c", 【?】 );
/***********SPACE***********/
【?】;
}
}
【程序改错】
--------------------------------------------------------
题目:下面程序的功能是:从键盘输入十个学生的成绩,统计最
高分,最低分和平均分。max代表最高分,min代表最低分,
avg代表平均分。
--------------------------------------------------------
注意:不可以增加或删除程序行,也不可以更改程序的结构。
------------------------------------------------------*/
main( )
{ int i;
/***********FOUND***********/
float a[8],min,max,avg;
printf("input 10 score:");
for(i=0;i<=9;i++)
{
printf("input a score of student:");
/***********FOUND***********/
scanf("%f",a);
}
/***********FOUND***********/
max=min=avg=a[1];
for(i=1;i<=9;i++)
{
/***********FOUND***********/
if(min<a[i])
min=a[i];
if(max<a[i])
max=a[i];
avg=avg+a[i];
}
avg=avg/10;
printf("max:%f\nmin:%f\navg:%f\n",max,min,avg);
}
【程序改错】
--------------------------------------------------------
题目:编写函数fun其功能是在键盘上输入一个3行3列矩阵
的各个元素的值(值为整数),然后输出矩阵第一行
与第三行元素之积,并在fun()函数中输出。
--------------------------------------------------------
注意:不可以增加或删除程序行,也不可以更改程序
的结构。
------------------------------------------------------*/
#include "stdio.h"
main()
{ int i,j,s,a[3][3];;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);}
s=fun(a);
printf("Sum=%d\n",s);
}
int fun(int a[3][3])
{
int i,j,sum;
/**********FOUND**********/
sum=0;
/**********FOUND**********/
for(i=0;i<3;i++)
for(j=0;j<3;j++)
/**********FOUND**********/
sum=*a[i][j];
return sum;
}
程序设计】
--------------------------------------------------
题目:请用for循环编写编写函数fun,函数的功能是:计算n门
课程的平均值,计算结果作为函数值返回。
例如,若有5门课程的成绩是:92,76,69,58,
88,则函数的值为76.600000。
--------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其
它函数中的任何内容,仅在函数fun的花括号中填
入所编写的若干语句。
------------------------------------------------*/
#include "stdio.h"
float fun(int a[],int n)
{
/**********Program**********/
/********** End **********/
}
main()
{
int a[]={92,76,69,58,88};
printf("y=%f\n",fun(a,5));
yzj();
}
yzj()
{
FILE *IN,*OUT;
int iIN[10],i,j;
float fOUT;
IN=fopen("18.in","r");
if(IN==NULL)
{printf("Please Verify The Currernt Dir..It May Be Changed");
}
OUT=fopen("18.out","w");
if(OUT==NULL)
{printf("Please Verify The Current Dir.. It May Be Changed");
}
for(j=0;j<10;j++)
{ for(i=0;i<5;i++)
fscanf(IN,"%d",&iIN[i]);
fOUT=fun(iIN,5);
fprintf(OUT,"%f\n",fOUT);
}
fclose(IN);
fclose(OUT);
}