2016C语言理论上机考试程序设计题05.doc
文本预览下载声明
C语言理论上机考试选择题部分
13、在考生目录下,要求程序PROG.C的功能是:将所有的水仙花数保存到一维数组a中。
(所谓水仙花数是指一个三位数,其各位数字立方和等于该数本身。
例如:153=1*1*1+5*5*5+3*3*3)
#include stdio.h
void main()
{
void NONO( );//函数声明
int a[10]={0},i;
/***********begin***********/
/************end************/
printf(水仙花数为:\n);
for(i=0;i10;i++)
if(a[i]!=0) printf(%d\n,a[i]);
NONO(a );
}
void NONO(int a[])
{ FILE *fw;
int i;
fw=fopen(PROGOUT.DAT,w);
for(i=0;i10;i++)
if(a[i]!=0) fprintf(fw,%d\n,a[i]);
fclose(fw);
}
14、在考生文件夹下,要求程序PROG.C的功能是:
求3*3矩阵的最大值并输出。
例如,当矩阵为:
1 2 3
4 9 5
7 8 6
则最大值为:9
#include stdio.h
int fun(int a[3][3])
{
/***********begin***********/
/************end************/
}
void main()
{
void NONO( );//函数声明
int a[3][3]={1,2,3,4,9,5,7,8,6};
int i,j,max;
printf(array is:\n);
for(i=0;i3;i++)
{
for(j=0;j3;j++)
printf(%5d,a[i][j]);
printf(\n);
}
max=fun(a);
printf(Result is: %d\n,max);
NONO( );
}
void NONO( )
{ FILE *fr,*fw;
int i,j,k,m,a[3][3];
fr=fopen(PROGIN.DAT,r);
fw=fopen(PROGOUT.DAT,w);
for(i=1;i=5;i++)
{ for(j=0;j3;j++)
for(k=0;k3;k++)
{ fscanf(fr,%d,a[j][k]);
fprintf(fw,%4d,a[j][k]);}
fprintf(fw,Max = %d\n,fun(a));}
fclose(fr);
fclose(fw);
}
15、 在考生文件夹下,要求程序PROG.C的功能是:求一维数组a中所有元素的平均值。
部分源程序存在文件PROG.C中,请将计算结果存入变量av中。
#include stdio.h
#define N 20
void main()
{ int a[N]={1,20,8,14,7,12,2,19,19,15,13,14,20,10,16,
20,7,6,12,12 };
double av;
FILE *f;
/***********begin***********/
/************end************/
printf(Aver=%f\n,av);
f=fopen(PROGOUT.DAT,w);
fprintf(f,Average = %.2f\n,av);
fclose(f);
}
2
int a,b,c,j=0;
for(i=100;i=999;i++)
{c=i%10;
a=i/100;
b=(i/10)%10;
if(i==a*a*a+b*b*b+c*c*c)
{a[j]=i;j++;}
}
int i,s=0;
for(i=0;i20;i++)
s=s+a[i];
av=s/N;
int i,j,s=0;
for(i=0;i3;i++)
for(j
显示全部