编程题汇总答案文档格式.docx

上传人:b****5 文档编号:21424128 上传时间:2023-01-30 格式:DOCX 页数:38 大小:24.45KB
下载 相关 举报
编程题汇总答案文档格式.docx_第1页
第1页 / 共38页
编程题汇总答案文档格式.docx_第2页
第2页 / 共38页
编程题汇总答案文档格式.docx_第3页
第3页 / 共38页
编程题汇总答案文档格式.docx_第4页
第4页 / 共38页
编程题汇总答案文档格式.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

编程题汇总答案文档格式.docx

《编程题汇总答案文档格式.docx》由会员分享,可在线阅读,更多相关《编程题汇总答案文档格式.docx(38页珍藏版)》请在冰豆网上搜索。

编程题汇总答案文档格式.docx

51;

i++)

s+=1.0/(i*(i+1));

printf("

%f"

s);

4.(分值:

2.1分)编写程序,求S=1/(1+2)+1/(2+3)+1/(3+4)+……前50项之和。

inti=1;

floatsum=0;

while(i<

=50)

sum=sum+1.0/(i+(i+1));

i++;

\ns=%f\n"

sum);

5.(分值:

2.1分)编一通用函数sub,分别统计字符串strg中字母'

'

A'

及'

a'

的个数;

主函数中输入一不大于80个字符的字符串,调用上述函数,输出'

的个数。

(注:

此程序不允许使用全局变量,不允许在sub函数中输出)

#include<

intnum1,num2;

voidsub(char[],int,int);

charstrg[80];

请输入字符:

\n"

);

gets(strg);

sub(strg,&

num1,&

num2);

A的个数为:

num2);

a的个数为:

num1);

voidsub(charstrg[],int*n1,int*n2)

inti,a=0,A=0;

for(i=0;

strg[i]!

='

\0'

;

i++)

if(strg[i]=='

a++;

elseif(strg[i]=='

A++;

*n1=a;

*n2=A;

6.(分值:

2.1分)编一通用函数avernum,计算含有n个数据的一维数组的平均值,并统计此

数组中大于平均值的数据的个数;

主函数中定义含有100个元素的数组x,x[I]=200*cos(I*0.875)(I=0,1,2……99),调用上述函数,输出此数组的平均值及大于平均值的数据的个数。

此程序不允许使用全局变量,不允许在avernum函数中输出)

#include"

stdio.h"

math.h"

#defineN100

doubleavernum(double*x,doublen,doubleave)

{doubleaver=0.000000,a=0;

if(ave==0)

{for(i=0;

i<

n;

i++)

aver=aver+*(x+i);

aver=aver/n;

returnaver;

}

else

if(ave<

*(x+i))a++;

returna;

{doublex[N],m,aver;

N;

x[i]=200*cos(i*0.875);

aver=avernum(x,N,0);

m=avernum(x,N,aver);

aver=%f\nm=%f\n"

aver,m);

7.(分值:

2.1分)编一通用函数avermax,计算含有n个数据的一维数组的平均值,并求出此

数组中大于平均值的数据之和;

主函数中定义含有300个元素的数组x,x[I]=10*cos((3.0+I*I)/5)(I=0,1,2……299),调用上述函数,输出此数组的平均值及大于平均值的数据之和。

此程序不允许使用全局变量,不允许在avermax函数中输出)

#defineN300

{i=0;

while(i<

n)

{aver=aver+*(x+i);

i++;

}

{if(ave<

*(x+i))a+=*(x+i);

inti=0;

while(i<

N)

{x[i]=10*cos((3.0+i*i)/5);

8.(分值:

2.1分)编一通用函数maxsub,求出含有n个数据的一维数组的最大值及其所在位

置(即下标);

主函数中定义含有300个元素的数组x,x[I]=10*cos((3.0+I*I)/5)(I=0,1,2……299),调用上述函数,输出此数组的最大值及其所在位置。

此程序不允许使用全局变量,不允许在maxsub函数中输出)

doublemaxsub(double*y,doublen,doubleave)

{doublemax;

inti,j=0;

{max=*y;

for(i=1;

if(max<

*(y+i))

{max=*(y+i);

j++;

returnmax;

returnj;

x[i]=10*cos((3.0+i*i)/5);

aver=maxsub(x,N,0);

m=maxsub(x,N,aver);

9.(分值:

2.1分)编一函数,统计一维整数组小于数组元素平均值的元素的个数;

主函数定义

x[50],x[i]=600*cos(i*0.35),调用函数,输出小于数组元素平均值的元素的个数。

#include"

#defineN50

floatavernum(floaty[],intn)

{floatv,s=0;

intcount=0,i=0;

n)

{s+=y[i];

i++;

v=s/n;

i=0;

{if(y[i]<

v)

count++;

return(count);

{floatx[N];

inti=0;

N)

{x[i]=600*cos(i*0.35);

%f\n"

avernum(x,50));

10.(分值:

2.1分)编一函数,求有50个元素的一维整数组中最大值的位置;

主函数中定义

y[50],y[j]=600*sin(j*0.16),调用函数,输出最大值及其位置。

doublemaxsub(doublex[],intnum,doublemax)

inti,j;

doublem=0.00000;

m=x[0];

j=0;

if(max==0)

{for(i=1;

i<

num;

if(x[i]>

m)

m=x[i];

j=i;

return(m);

else

return(j);

voidmain()

{doublea[50],max,m;

50;

a[i]=600*sin(i*0.16);

max=maxsub(a,50,0);

m=maxsub(a,50,max);

m=%f,J=%f\n"

max,m);

11.(分值:

2.1分)求一维实型数组中最大元素。

要求:

主函数中定义含有300个元素的数组x,x[i]=10*cos((3.0+i*i)/5)(i=0,1,2……299),调用自定义函数qmax求出最大元素,然后在主函数中输出结果。

#include"

#include"

floatqmax(floata[],intn)

inti=1;

floatmax=a[0];

{

a[i])

max=a[i];

return(max);

floatx[N],max;

x[i]=10*cos(3.0+i*i)/5;

max=qmax(x,N);

%10.4f\n"

12.(分值:

2.1分)求一维整型数组中的最小元素。

主函数定义数组y[50],y[j]=600*sin(j*0.16)(j=0,1,2……49),调用自定义函数qmin

求出最小元素,最后在主函数中输出结果。

#include 

"

 

main() 

int 

y[50],min, 

j;

qmin(int 

x[50]);

for(j=0;

j<

=49;

j++) 

y[j]=600*sin(j*0.16);

min=qmin(y);

printf("

min=%d"

min);

x[50]) 

i,min;

min=x[0];

for(i=1;

i++) 

if(x[i]<

min) 

min=x[i];

return(min);

13.(分值:

2.1分)求一维整型数组中正数的和。

主函数定义数组a[10],从键盘输入十个数,调用自定义函数求出正数的和,然后在主函数中输出结果

math.h>

voidhanshu(double[],int,double*);

doublea[10],he;

请输入10个数:

10;

第%d个数:

i+1);

scanf("

%lf"

&

a[i]);

hanshu(a,10,&

he);

he);

voidhanshu(doublea[],intw,double*nhe)

doublezhengshuhe=0;

w;

if(a[i]>

0)

{

zhengshuhe+=a[i];

}

*nhe=zhengshuhe;

14.(分值:

2.1分)求n!

inti,n,he;

请输入n:

n=i;

for(he=1;

0;

i--)

he*=i;

%d!

=%d"

n,he);

intjiecheng(int);

inti,he;

he=jiecheng(i);

i,he);

intjiecheng(inti)

intji;

for(ji=1;

ji*=i;

returnji;

15.(分值:

2.1分)通过调用自定义函数来完成求圆柱体的体积(v=3.14*r*r*h),

要求圆柱体的高和底半径在主函数中做输入,圆柱体的体积在主函数中做输出。

floatvolume_cy(floatr,floath)

return(3.14*r*r*h);

{floatr,h,v;

请输入圆柱体的半径和高度"

scanf("

%f%f"

r,&

h);

v=volume_cy(r,h);

\n圆柱体的体积为%f\n"

v);

16.(分值:

2.1分)通过调用自定义函数完成求正方形的体积(要求:

正方体的的边长在主函

数中做输入,正方体的体积在主函数中做输出)。

intvolume_c(inta);

inta;

intv;

pleaseinputa:

a);

v=volume_c(a);

v=%d\n"

intvolume_c(inta)

returna*a*a;

17.(分值:

2.1分)通过调用自定义函数完成找两个数的最大值(要求:

在主函数中输入两个

数并且在主函数中输出最大值)。

intHmax(int,int);

inta,b,c;

请输入两个数:

%d%d"

a,&

b);

c=Hmax(a,b);

%d和%d的最大值是%d"

a,b,c);

intHmax(inta,intb)

intMAX;

if(a>

b)

MAX=a;

else

MAX=b;

returnMAX;

18.(分值:

2.1分)输入10个整数,统计同时能被3和7整除的个数,将结果输出。

intn=0,i,num;

=10;

请输入第%d个数:

i);

num);

if(num!

=0)

if((num%3==0)&

(num%7==0))

n++;

else

continue;

else

输入有误。

continue;

能被3和7整数的个数为:

n);

19.(分值:

2.1分)编写一个sum函数求和:

输入一个正整数n,统计不大于n值的所有正偶数的和,在主函数中完成输入输出。

intn,sum=0,i;

请输入一个正整数:

scanf("

n);

i=2;

do

{sum=sum+i;

i+=2;

}while(i<

n);

sum);

20.(分值:

2.1分)求圆锥体积:

在主函数中输入半径和高度,调用函数求体积,要求在主函

数中输出圆锥的体积。

(公式v=h*3.14*r*r/3)

floatareaT(doubler,doubleh)

return3.14*r*r*h/3.0;

floatr,h,v;

请输入圆锥体的半径和高度"

r,&

v=areaT(r,h);

\n圆锥体的体积为%f\n"

v);

21.(分值:

2.1分)通过函数调用求华氏温度,要求在主函数中输入摄氏温度,在主函数中输

出华氏温度。

(公式f=5/9*c+32)

floatFra(floatc);

floatc,f;

c);

f=Fra(c);

f=%f\n"

f);

floatFra(floatc)

floatf=5.0/9*c+32;

returnf;

22.(分值:

2.1分)调用函数求梯形面积,要求在主函数中输入上底、下底和高,在主函数中

输出梯形面积的值。

(公式s=(a+b)*h/2)

doubleareaT(doublea,doubleb,doubleh)

return0.5*(a+b)*h;

intmain(void)

doublea,b,h;

请输入梯形的上底、下底和高:

%lf%lf%lf"

a,&

b,&

thelength=%f,thewidth=%f,theheight=%f\nTheareaT=%f\n"

a,b,h,areaT(a,b,h));

23.(分值:

2.1分)编程求1+(1+2)+…+(1+2+…+n),n的值由键盘输入。

voidmain()

{

inti,j=0,n;

intsum=0;

请输入n的值:

=n;

{j=j+i;

sum=sum+j;

\ns=%d\n"

sum);

24.(分值:

2.1分)求包含10个元素的一维整型数组中的最小元素。

在主函数定义数组并且输入10个元素的值,调用自定义函数求出最小元素,最后在主函数中输出结果。

intHmin(int[]);

inta[10];

inti,nmin;

nmin=Hmin(a);

最小元素为:

nmin);

intHmin(inta[])

inti,n=a[0];

if(a[i]<

n=a[i];

continue;

returnn;

25.(分值:

2.1分)通过调用自定义函数完成找两个数的最小值(要求:

数并且在主函数中输出最小值)。

intHmin(int,int);

c=Hmin(a,b);

%d和%d的最小值是%d"

intHmin(inta,intb)

intMIN;

if(a<

MIN=a;

MIN=b;

returnMIN;

26.(分值:

2.1分)编写一个函数fun,函数的功能是:

判断一个整数是否既是5又是7的整倍数。

若是,输出yes,否则输出no。

在主函数中输入任意一个正整数,调用fun函数,输出该数对应的结果。

voidfun(int);

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

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1