湖南工业大学C语言上机模拟试题Word文档格式.docx
- 文档编号:22290812
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:14
- 大小:17.41KB
湖南工业大学C语言上机模拟试题Word文档格式.docx
《湖南工业大学C语言上机模拟试题Word文档格式.docx》由会员分享,可在线阅读,更多相关《湖南工业大学C语言上机模拟试题Word文档格式.docx(14页珍藏版)》请在冰豆网上搜索。
s=s+i;
----s=s+arr[i]
return(s);
}
voidmain()
{inta[10]={10,4,2,7,3,12,5,34,5,9},i,s;
s=sum(a,2);
------s=sum(a,10);
printf("
%d\n"
s);
二、程序填空题(30分)
在考生文件夹下,给定程序FILL.C的功能是:
求一维数组a中素数的个数。
例如:
如果数组a的元素为:
2,3,5,7,8,9,10,11,12,13,
则程序的输出应为:
primenumber(s)is(are):
6。
请填空,并运行该程序,然后将源程序文件FILL.C提交。
程序有两个空
(1)、
(2)需要补充完整。
并将程序调试出
所需的结果。
不要随意改动程序,不得增行或删行,也不得更
改程序的结构!
math.h>
{inta[10]={2,3,5,7,8,9,10,11,12,13},i,j,k,count;
//clrscr();
count=0;
10;
{
k=sqrt(a[i]);
for(j=2;
j<
=k;
j++)
if(a[i]%j==0)
break;
if(____
(1)____)--------a[i]==2||a[i]%j!
=0;
count++;
%d"
____
(2)____);
-----count
输出Fabonacci数列:
1,1,2,3,5,8,……的前20项的
项值,要求每行输出5个数。
并将程序调试出所需的结果。
不要随意改动程序,不得增行或删行,也不得更改程序的结构!
未提交#include"
stdio.h"
{longintf[20]={1,1};
inti;
/**************found************/
___
(1)___;
-----printf("
%8ld%8ld"
f[0],f[1]);
for(i=2;
20;
f[i]=f[i-1]+f[i-2];
if(___
(2)___)printf("
\n"
);
-----i%5==0
%8ld"
f[i]);
三、程序编程题(40分)
在考生文件夹下,要求程序PROG.C的功能是:
将一个4位的整数m拆开,然后按相反顺序输出,每输出一位数其后留
2个空格。
例如,如果m=1234,则程序的输出结果应为:
m=1234,4321。
部分源程序存在文件PROG.C中。
请在main()函数中的/*******begin********/与/********end*********/
之间填入你编写的若干语句,存盘并运行,直到得出正确结果。
请勿改动其它位置的任何内容。
main()函数中的最后一行以及main()函数后面的内容,考生不必阅读,但千万不要对这些内容作任何改动。
运行并调试程序,然后将源程序文件PROG.C提交。
特别提示:
必须将计算结果存入变量sum中。
#include"
math.h"
conio.h"
stdlib.h"
{intm=1234,a,b,c,d;
/***********begin***********/
a=m%10;
b=m/10%10;
c=m/100%10;
d=m/1000;
/************end************/
m=%d,%d%d%d%d\n"
m,a,b,c,d);
NONO(m,a,b,c,d);
NONO(x,a,b,c,d)
intx,a,b,c,d;
{FILE*f;
f=fopen("
D:
\\exam\\01700329\\PROGOUT.DAT"
"
w"
fprintf(f,"
x=%d:
%3d%3d%3d%3d####\n"
x,a,b,c,d);
fclose(f);
在第一个循环中从键盘上给a数组的前M(M<
100)个数组元素依次赋值;
在
第二个循环中使a数组前M个元素中的值对称折叠;
在最后一个循环中输出
折叠以后的a数组的前M个元素。
当M为5时,如果从键盘上输入的5个数分别为:
1、2、3、4、5时,
输出应为:
12321。
当M为10时,如果从键盘上输入的10个数分别为:
1、2、3、4、5、6、7、8、9、10时,
1234554321。
#defineM5
{inti,a[100],t;
M;
___
(1)___------scanf("
&
a[i]);
___
(2)___;
i++)------i<
=(M/2)
a[M-i-1]=a[i];
%5d"
a[i]);
在考生目录下,要求程序PROG.C的功能是:
求一个三位整数m的每位数之和,m的值由键盘输入。
例如,当m=256时,程序的输出结果应为:
Resultis:
13。
请在fun()函数中的/*******begin********/与/********end*********/
intfun(intm)
inta,b,c,d;
a=m/100;
b=m/10%10;
c=m%10;
d=a+b+c;
return(d);
{intm,s;
Enterm:
scanf("
m);
s=fun(m);
NONO();
NONO()
{FILE*fr,*fw;
inti,j,k,m;
fr=fopen("
\\exam\\01700335\\PROGIN.DAT"
r"
fw=fopen("
\\exam\\01700335\\PROGOUT.DAT"
for(i=1;
=5;
{fscanf(fr,"
fprintf(fw,"
Sum=%d\n"
fun(m));
fclose(fr);
fclose(fw);
求二维数组a中的最大值和最小值。
例如,当二维数组a中的元素为:
4434
37312
565
Themaxis:
37
Theminis:
3。
{inta[3][3]={4,4,34,37,3,12,5,6,5},i,j,max,min;
max=min=a[0][0];
3;
for(j=1;
j++)------for(j=0;
{if(max<
a[i][j])
max=a[i][j];
if(min<
a[i][j])----if(min>
min=a[i][j];
Themaxis:
max);
min);
从键盘上输入一个正整数n,计算并输出n的阶乘。
例如,如果从键盘上输入8,
程序的运行结果应为:
40320。
longfac(intn)
{inti;
longt=1;
=n;
t=t*i;
return(t);
{intn;
longints;
Enteranintegernumber:
"
____
(1)____;
-----scanf("
n);
s=fac(n);
____
(2)____\n"
----%ld
三、程序编程题(40分)
试题要求:
在考生目录下,要求程序PROG.C的功能是:
按下面的公式求s的近似值:
11111
s=1+——+——+——+——+……+———
2*23*34*45*5n*n
部分源程序存在文件PROG.C中,n的值由键盘输入。
请在fun()函数中的/*******begin********/与/********end*********/
之间填入你编写的若干语句,存盘并运行,直到得出正确结果。
注意:
运行并调试程序,然后将源程序文件PROG.C提交。
#include"
doublefun(intn)
{
/***********begin***********/
doublesum,fac;
inti;
sum=0.0;
for(i=1;
{
fac=1.0/(i*i);
sum=sum+fac;
}
return(sum);
/************end************/
voidmain()
{doubles;
intn;
//clrscr();
printf("
Enters:
scanf("
s=fun(n);
s=%.3f\n"
NONO();
NONO()
{FILE*fr,*fw;
inti,m;
fr=fopen("
\\exam\\01700316\\PROGIN.DAT"
fw=fopen("
\\exam\\01700316\\PROGOUT.DAT"
{fscanf(fr,"
fprintf(fw,"
s=%.3f####\n"
fclose(fr);
fclose(fw);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 湖南 工业大学 语言 上机 模拟 试题