谋学网
C语言程序设计
要求:
独立完成,下面三组题目中,请任选其中一组题目作答,满分100分;
二、答题步骤:
使用A4纸打印学院指定答题纸(答题纸请详见附件);
在答题纸上使用黑色水笔按题目要求手写作答;答题纸上全部信息要求手写,包括中心、学号、姓名、科目、答题组数等基本信息和答题内容,请写明题型、题号;
三、提交方式:请将作答完成后的整页答题纸以图片形式依次粘贴在一个Word
文档中上传(只粘贴部分内容的图片不给分),图片请保持正向、清晰;
上传文件命名为“中心-学号-姓名-科目.doc”
文件容量大小:不得超过20MB。
提示:未按要求作答题目的作业及雷同作业,成绩以0分记!
题目如下:
第一组:
一、编程题(每题20分,共40分)
1、编写程序。输入一行字符(以回车符结束),分别统计其中字母、数字和其他符号的个数。
2、编写程序。要求编写子函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0,再调用该子函数求100以内的全部素数(素数就是只能被1和自身整除的正整数,1不是素数,2是素数)。
二、程序填空。在程序中的序号处填上正确的内容。(每空4分,共48分)
1、按照公式 e=1++++…+求e的近似值,至n=10为止。
#include
void main ( )
{ float_____①_____;
int n=1, i;
for(_____②_____)
{ n=_____③_____;
e=_____④_____;
}
printf (“ e= %f\n” ,e);
}
2、将文件file1.dat中的内容复制到file2.dat中。
#include
#define Null 0
void main()
{ FILE_____①_____;
charch;
if((p1=fopen(“file1.dat”,”r”)= =Null)||(p2=fopen(“file2.dat”,”w”)==Null))
{ printf(“Can’t open file\n”); _____②_____; }
while(_____③_____)
{ ch=_____④_____; fputc(ch,p2); }
fclose(p1);
fclose(p2);
}
3、求二维数组a[5][4]中所有元素的平均值。
#include
____ _①_ ____
void main ( )
{ int a[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);
}
int average(int s[ ][4] )
{ int i,j,aver=0;
for (i=0;i<5;i++)
for (j=0;j<4;j++)aver=aver+s[i][j];
aver=_____③_____;
_____④_____;
}
三、写出程序的执行结果(每题4分,共12分)
1、
#include
void main()
{ int i, j, k=4;
for (int i=1;i<=k;i++)
printf("%c",’*’); printf("\n");
for (int i=1;i<=k-2;i++)
{ printf("%c",’*’);
for (j=1;j<= k-2;j++)
printf("");
printf("*\n");
}
for (i=1;i<=k;i++)
printf("%c",’*’); printf("\n");
}
2、
#include
void fun(int s[ ]);
void main()
{ int a[ ]={1,2,3,4,5,6},k;
fun(a);
for(k=0;k<=5;k++) printf(“%d ”,a[k]);
printf(“\n”);
}
void fun(int s[ ])
{ int i=0;
while(i<3) { s[i]=s[i]+5; i++; }
}
3、
#include
void main()
{ int j, a[ ]={1,2,3,4,10,12,13,15};
for( j=3; j>0; j--)
switch ( j )
{ case 1:
case 2: printf(“%