天大《C语言程序设计》考试期末大作业Word下载.docx
《天大《C语言程序设计》考试期末大作业Word下载.docx》由会员分享,可在线阅读,更多相关《天大《C语言程序设计》考试期末大作业Word下载.docx(11页珍藏版)》请在冰豆网上搜索。
求e的近似值,至n=10为止。
#include<
stdio.n>
voidmain()
{float_____①_____;
intn=1,i;
for(_____②_____)
{n=_____③_____;
e=_____④_____;
}
printf(“e=%f\n”,e);
2、将文件file1.dat中的内容复制到file2.dat中。
stdio.h>
#defineNull0
voidmain()
{FILE_____①_____;
charch;
if((p1=fopen(“file1.dat”,”r”)==Null)||(p2=fopen(“file2.dat”,”w”)==Null))
{printf(“Can’topenfile\n”);
_____②_____;
}
while(_____③_____)
{ch=_____④_____;
fputc(ch,p2);
fclose(p1);
fclose(p2);
}
3、求二维数组a[5][4]中所有元素的平均值。
_____①_____
{inta[5][4],i,j,pa;
for(i=0;
i<
5;
i++)
for(j=0;
j<
4;
j++)
scanf(“%d”,&
a[i][j]);
pa=_____②_____;
printf(“average=%d\n”,pa);
intaverage(ints[][4])
{inti,j,aver=0;
j++)aver=aver+s[i][j];
aver=_____③_____;
_____④_____;
三、写出程序的执行结果(每题4分,共12分)
1、
{inti,j,k=4;
for(inti=1;
=k;
printf("
%c"
’*’);
printf("
\n"
);
=k-2;
i++)
{printf("
for(j=1;
=k-2;
"
*\n"
for(i=1;
printf("
2、
voidfun(ints[]);
{inta[]={1,2,3,4,5,6},k;
fun(a);
for(k=0;
k<
=5;
k++)printf(“%d”,a[k]);
printf(“\n”);
voidfun(ints[])
{inti=0;
while(i<
3){s[i]=s[i]+5;
i++;
3、
{intj,a[]={1,2,3,4,10,12,13,15};
for(j=3;
j>
0;
j--)
switch(j)
{case1:
case2:
printf(“%d,”,a[j+4]);
break;
case3:
printf(“%d,”,a[j-1]);
第二组:
1、编写程序。
定义数组存放任意输入的10个实数,求出其中的最大值以及第一个最
大值的下标并输出。
要求编写一个求最大供公约数的子函数,调用该子函数对输入的a、b求它们的最大公约数并输出。
1、程序用于输出如下图形。
123456789
1
24
369
481216
510152025
61218243036
7142128354249
816243240485664
91827364554637281
voidmain()
{inti,j;
for(i=1;
i<
10;
i++)
printf(“%4d”,_____①_____);
{for(j=1;
printf(“%4d”,_____③_____);
2、输入50个实数,统计其中正数、负数和零的个数。
#include
<
voidfun(int*zs,int*fs,int*l,_____①_____)
{inti;
for(i=0;
50;
{if(aa[i]>
0)(*zs)++;
if(aa[i]<
0)
(*fs)++;
if(aa[i]==0)
(*l)++;
voidmain()
{floatnum[50];
inti,czs,cfs,cl;
czs=cfs=cl=0;
\nPleaseenter50floatnumbers:
scanf(“%f”,_____②_____);
fun(_____③_____,_____④_____);
\n正数:
%d,负数:
%d,零:
%d\n"
czs,cfs,cl);
3、输入正整数m和n,求出[m,n]区间的所有素数。
_____①_____
{intm,n,i,j,k;
scanf("
%d%d"
&
m,&
n);
for(i=m;
n;
{k=sqrt(i);
for(j=2;
if(_____③_____)break;
if(_____④_____)
%d"
i);
{chars1[]="
abcde"
s2[10];
inti=0;
while(s1[i]!
=’\0’)
{s2[i]=s1[i]+3;
s2[i]='
\0'
;
%s"
s2);
#include<
{charch1='
A'
ch2='
B'
switch(ch1)
{case'
:
switch(ch2)
Good!
break;
case'
Better!
case'
Best!
intage(int
n)
{intc;
if(n==1)
c=10;
else
c=age(n-1)+2;
return(c);
{printf("
%d"
age(5));
第三组:
计算
(求n项,n由键盘输入并要求最后一项小于10-6结束。
自定义函数求N名学生1门课程成绩的平均分,调用该函数求10名
学生1门课程成绩的平均分。
1、判断一个整数的各位数字是否都相同,相同则显示“yes“,否则显示”no”。
voidmain()
{inta,r1,r2;
scanf(“%d”,_____①_____);
do{r1=a%10;
_____②_____;
r2=a%10;
}while(a!
=0&
&
_____③_____);
if(a!
=0)printf(”no\n”);
else_____④_____;
2、输出如下图形。
12345
11234
11123
11112
11111
#include<
voidfun(_____①_____)
{inti,j;
=n;
{for(j=1;
printf(“%3d”,1);
=_____③_____;
j++)
printf(“%3d”,j);
{
3、输入一个3行5列的整数矩阵,输出其中最大值和它们的下标。
{inta[3][5],i,j,t,n=3,m=5,max,maxrow,maxcol;
printf(“Enter%d*%dnumbers!
\n”,n,m);
for(i=0;
n;
for(j=0;
m;
{scanf(“%d”,&
t);
_____①_____;
max=a[0][0];
_____②_____;
for(i=0;
if(_____③_____)
{_____④_____;
maxrow=i;
maxcol=j;
printf(“MAX=a[%d][%d]=%d\n”,maxrow,maxcol,max,);
{inta[][3]={9,7,5,3,l,2,4,6,8};
inti,j,sl=0,s2=0;
3;
j++)
{if(i==j)
s1=s1+a[i][j];
if(i+j==2)
s2=s2+a[i][j];
printf(“%d%4d\n”,sl,s2);
{chara[]={‘*’,‘*’,‘*’,‘*’,‘*’};
inti,j,k;
4;
{printf(“\n”);
i;
printf(“%c”,‘’);
for(k=0;
k++)
printf(“%c”,a[k]);
printf(“\n”);
{ints[5];
s[i]=i*2;
for(i=4;
i>
=0;
i--)
printf(“%5d”,s[i]);