C语言上机模拟试题Word文档下载推荐.docx

上传人:b****5 文档编号:8398476 上传时间:2023-05-11 格式:DOCX 页数:14 大小:17.78KB
下载 相关 举报
C语言上机模拟试题Word文档下载推荐.docx_第1页
第1页 / 共14页
C语言上机模拟试题Word文档下载推荐.docx_第2页
第2页 / 共14页
C语言上机模拟试题Word文档下载推荐.docx_第3页
第3页 / 共14页
C语言上机模拟试题Word文档下载推荐.docx_第4页
第4页 / 共14页
C语言上机模拟试题Word文档下载推荐.docx_第5页
第5页 / 共14页
C语言上机模拟试题Word文档下载推荐.docx_第6页
第6页 / 共14页
C语言上机模拟试题Word文档下载推荐.docx_第7页
第7页 / 共14页
C语言上机模拟试题Word文档下载推荐.docx_第8页
第8页 / 共14页
C语言上机模拟试题Word文档下载推荐.docx_第9页
第9页 / 共14页
C语言上机模拟试题Word文档下载推荐.docx_第10页
第10页 / 共14页
C语言上机模拟试题Word文档下载推荐.docx_第11页
第11页 / 共14页
C语言上机模拟试题Word文档下载推荐.docx_第12页
第12页 / 共14页
C语言上机模拟试题Word文档下载推荐.docx_第13页
第13页 / 共14页
C语言上机模拟试题Word文档下载推荐.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言上机模拟试题Word文档下载推荐.docx

《C语言上机模拟试题Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C语言上机模拟试题Word文档下载推荐.docx(14页珍藏版)》请在冰点文库上搜索。

C语言上机模拟试题Word文档下载推荐.docx

s=s+b[i];

{inta[12]={10,4,2,7,3,12,5,34,5,9,21,19},n;

n=sum(a,2);

n=sum(a,12);

Theresultis:

%d\n"

n);

3、求二维数组a中的最大值和最小值。

{inta[3][3]={4,4,34,37,3,12,5,6,5},i,j,max,min;

//clrscr();

max=min=a[0][0];

3;

for(j=1;

j<

j++)改为:

for(j=0;

j++)

{if(max<

a[i][j])

max=a[i][j];

if(min<

a[i][j])改为:

if(min>

a[i][j])

min=a[i][j];

Themaxis:

max);

Theminis:

min);

4、求一维数组a中的最大元素及其下标。

{inta[10]={1,4,2,7,3,12,5,34,5,9},i,max,pos;

max=a[0];

pos=0;

for(i=1;

10;

if(max>

a[i])改为:

if(max<

a[i])

{

max=a[i];

i=pos;

pos=i;

%d,posis:

max,pos);

5、猴子吃桃的问题,求第一天的桃子数。

stdlib.h>

math.h>

{inti,j,x,p;

x=1;

j=12;

j=11;

while(j>

=1)

{p=(x+1)*2;

p=x;

x=p;

j--;

totalis%d\n"

p);

6、求一维数组a中的值为奇数的元素的平均值。

doubleaverage(intarr[],intn)

{intk=0,i;

doubles;

for(i=0;

i<

if(arr[i]%2=1)改为:

if(arr[i]%2==1)

{s=s+arr[i];

k++;

return(s/k);

inta[12]={10,4,2,7,3,12,5,34,5,9,21,18};

//clrscr();

s=average(a[12],12);

s=average(a,12);

%.2f\n"

二、填空题:

1、求一维数组a中的素数的个数:

2、程序的功能是:

在第一个循环中从键盘上给a数组的前M(M<

100)个数组元素依次赋值,在第二个循环中使a数组前M个元素中的值对称折叠,在最后一个循环中输出折叠后的 

a数组的前M个元素。

程序如下:

#defineM5

voidmain()

{inti,a[100],t;

for(i=0;

M;

i++)

/**************found************/

___

(1)___-填写的语句为:

scanf(“%d”:

&

a[i]);

___

(2)___;

i++)-填写的语句为:

M/2

a[M-i-1]=a[i];

%5d"

a[i]);

\n"

);

3、计算正整数num的各位上的数字之和。

{intnum,k;

//clrscr();

___

(1)___;

填写的语句为:

k=0;

Pleaseenteranumber:

"

);

scanf("

%d"

num);

do

k=___

(2)___;

k=k+num%10;

num/=10;

}while(num);

\n%d\n"

k);

4、求cman=m!

/n!

*(m-n)!

之值,例如:

m=12,n=2时,cmanis66

longintfun(intx)

{longints=1;

inti;

for(i=1;

=x;

i++)

s*=i;

____

(1)____;

returns;

{longintm=12,n=2,s1,s2,s3;

s1=fun(m);

s2=fun(n);

s3=fun(m-n);

Cmnis:

%ld"

____

(2)____);

s1/(s2*s3)

5、输出Fabonacci数列1,1,2,3,5……前20项,要求每位输出5个数。

#include"

stdio.h"

{longintf[20]={1,1};

填写的语句:

intj=0;

for(i=2;

20;

f[i]=f[i-1]+f[i-2];

if(___

(2)___)printf("

j++%5==0

%8ld"

f[i]);

6、求两个正整数[m,n]之间所有既能被3整除也能被7整除的整数之和。

main()

{intm,n,i,t;

longints=0;

%d,%d"

m,&

n);

if(m>

n)

{t=m;

m=n;

n=t;

}

for(____

(1)____;

i++)填写的语句:

i=m;

=n;

if(i%3==0&

&

i%7==0)

s+=i;

Sumis:

____

(2)____\n"

s);

填写的语句:

%ld

7、从键盘输入一个由数字组成的字符串(字符串长度小于8),将该字符串转换成一个十进制数。

例如:

从键盘输入12345,则程序运行的结果应当为:

n=12345

string.h"

{chars[10];

longintn;

n=0

%s"

s);

strlen(s);

n=n*10+___

(2)___;

i+1

n=%ld\n"

n);

8、从键盘输入一个正整数n,计算并输出n的阶乘。

longfac(intn)

{inti;

longt=1;

for(i=2;

t=t*i;

return(t);

{intn;

longints;

Enteranintegernumber:

scanf("

%ld"

s=fac(n);

三、编程题:

(40分)

1、按下面的公式求s的近似值,直到最后一项值的绝对值小于x为止,x的值由键盘输入,结果保留4位小数。

S=1-1/3+1/5-1/9+…..+(-1)^(n-1)1/2n-1

#include"

math.h"

stdlib.h"

doublefun(doublex)

/***********begin***********/

inty,i=1;

doublea,sum=0.0;

do{

if(i%2==0)

y=-1;

elsey=1;

a=y*1.0/(2*i-1);

sum=sum+a;

i++;

}while(fabs(a)>

=x);

returnsum;

/***********end***********/

{

doublex,sum;

Enterx:

%lf"

x);

sum=fun(x);

sum=%.4f\n"

sum);

NONO();

NONO()

{FILE*fr,*fw;

doublex;

fr=fopen("

D:

\\exam\\03200310\\PROGIN.DAT"

"

r"

fw=fopen("

\\exam\\03200310\\PROGOUT.DAT"

w"

for(i=1;

=5;

{fscanf(fr,"

fprintf(fw,"

s=%.4f\n"

fun(x));

fclose(fr);

fclose(fw);

2、将一个4位的整数m拆开,然后按相反的顺序输出,每输出一位数其后留2个空格。

如m=1234,输出的结果应为m=1234,4321.程序如下:

{intm=1234,a,b,c,d;

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("

\\exam\\03200302\\PROGOUT.DAT"

fprintf(f,"

x=%d:

%3d%3d%3d%3d####\n"

x,a,b,c,d);

fclose(f);

3、按下面的公式,求S的近似值。

S=1+1/2*2+1/3*3+…+1/n*n

doublefun(intn)

inti;

doublep,sum=0.0;

for(i=1;

{p=i*i;

sum=sum+1.0/p;

{doubles;

intn;

Enters:

s=fun(n);

s=%.3f\n"

inti,m;

\\exam\\03200306\\PROGIN.DAT"

\\exam\\03200306\\PROGOUT.DAT"

m);

s=%.3f####\n"

fun(m));

a)求一个三数m的各位上的数字之和。

m由键盘输入。

intfun(intm)

ints=0;

while(m!

=0)

{s=s+m%10;

m=m/10;

{intm,s;

Enterm:

s=fun(m);

Resultis:

inti,j,k,m;

\\exam\\03200308\\PROGIN.DAT"

\\exam\\03200308\\PROGOUT.DAT"

Sum=%d\n"

b)求两个正整数m和n的最大公约数,将求出的最大公数存入变量t中。

{intm=76,n=40,t,i;

while(n!

{i=m%n;

m=n;

n=i;

t=m;

TheHighestCommonDivisorof%dand%dis%d\n"

m,n,t);

NONO(m,n,t);

NONO(intm,intn,intt)

\\exam\\03200309\\PROGOUT.DAT"

MaximalCommonDivisorOf%dand%dis%d\n"

c)求两个正整数m和n的最小公倍数,将求出的最小公倍存入变量t中。

{intm=6,n=45,t,i,temp;

temp=n*m;

while(m!

{i=n%m;

n=m;

m=i;

t=temp/n;

TheLowestCommonMultipleof%dand%dis%d\n"

NONO(intm,intn,ints)

\\exam\\03200339\\PROGOUT.DAT"

MinimalCommonMultipleOf%dand%dis%d\n"

m,n,s);

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2