C语言刷题修订版多解Word下载.docx
- 文档编号:16488635
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:18
- 大小:17.78KB
C语言刷题修订版多解Word下载.docx
《C语言刷题修订版多解Word下载.docx》由会员分享,可在线阅读,更多相关《C语言刷题修订版多解Word下载.docx(18页珍藏版)》请在冰豆网上搜索。
Sum=%d\n"
s);
}
intfun(inta[3][3])
{
/**********Program**********/
inti,sum=1;
for(i=0;
sum*=a[i][i];
returnsum;
或者
returna[0][0]*a[1][1]*a[2][2];
/**********End**********/
第2题(35.0分)
求小于lim的所有素数并放在aa数组中,该函数返回
所求出素数的个数。
#include<
conio.h>
#defineMAX100
intfun(intlim,intaa[MAX])
/**********Program**********/
intn=0;
inti,j;
for(i=2;
=lim;
{for(j=2;
i;
if(i%j==0)break;
if(j==i)aa[n++]=i;
returnn;
intlimit,i,sum;
intaa[MAX];
Pleaseinputainteger:
"
);
limit);
sum=fun(limit,aa);
sum;
i++){
if(i%10==0&
&
i!
=0)printf("
\n"
%5d"
aa[i]);
第3题(35.0分)
题目:
输入华氏温度求摄氏温度。
转换公式为c=5/9(f-32),
输出结果取两位小数。
doublefun(doublem)
floatn;
n=(5.0/9.0)*(m-32);
return(5.0/9.0)*(m-32);
/**********End**********/
voidmain()
doublec,f;
请输入一个华氏温度:
scanf("
%lf"
f);
c=fun(f);
printf("
摄氏温度为:
%5.2f\n"
c);
第4题(35.0分)
找出一批正整数中的最大的偶数。
intfun(inta[],intn)
inti,amax=-1;
n;
if(a[i]%2==0)
if(a[i]>
amax)amax=a[i];
returnamax;
inta[]={1,2,9,24,35,18},k;
k=fun(a,6);
max=%d\n"
k);
第5题(35.0分)
编写main程序调用函数fact求解从m个元素选n个元
素的组合数的个数。
计算公式是:
组合数=m!
/(n!
.(m-n)!
)。
要求:
m不能小于n,否则
应有容错处理。
说明:
函数fact(x)的功能是求x!
。
longfact(intx)
longy;
inti;
y=1;
for(i=1;
=x;
y=y*i;
returny;
intm,n;
longzhsgs;
请输入m和n:
%d%d"
m,&
n);
while(m<
n)
m和n输入错!
请重新输入:
zhsgs=fact(m)/(fact(n)*fact(m-n));
从%d个元素选%d个元素的组合数的个数是:
%d\n"
m,n,zhsgs);
第6题(35.0分)
求一个四位数的各位数字的立方和。
intfun(intn)
intd,s=0;
while(n>
0)
{d=n%10;
s+=d*d*d;
n/=10;
returns;
intk;
k=fun(1234);
k=%d\n"
第7题(35.0分)
为整数),然后输出主对角线元素的平方和,并在
fun()函数中输出。
wwjt();
intsum;
inti;
sum=0;
sum=sum+a[i][i]*a[i][i];
returnsum;
return(a[0][0]*a[0][0]+a[1][1]*a[1][1]+a[2][2]*a[2][2]);
第8题(35.0分)
计算n门课程的平均值,计算结果作为函数值返回。
例如:
若有5门课程的成绩是:
92,76,69,58,88,
则函数的值为76.600000。
------------------------------------------------*
floatfun(inta[],intn)
floaty=0;
y+=a[i];
y=y/n;
inta[]={92,76,69,58,88};
y=%f\n"
fun(a,5));
第9题(35.0分)
根据整型形参m,计算如下公式的值:
y=sin(m)*10。
若m=9,则应输出:
4.121185
#include"
math.h"
doublefun(intm)
/**********Program**********/
doubley=0;
y=sin(m)*10;
return(y);
returnsin(m)*10.0;
main()
intn;
Entern:
"
&
\nTheresultis%1f\n"
fun(n));
}
第10题(35.0分)
求一批数中最大值和最小值的差。
#defineN30
#include"
stdlib.h"
intmax_min(inta[],intn)
inti,max,min;
max=min=a[0];
if(a[i]>
max)max=a[i];
elseif(a[i]<
min)min=a[i];
return(max-min);
inta[N],i,k;
N;
a[i]=random(51)+10;
a[i]);
if((i+1)%5==0)printf("
k=max_min(a,N);
theresultis:
第11题(35.0分)
判断一个整数w的各位数字平方之和能否被5整除,
可以被5整除则返回1,否则返回0。
conio.h"
intfun(intw)
intk,s=0;
do
{s=s+(w%10)*(w%10);
w=w/10;
}while(w!
=0);
return(s%5==0?
1:
0);
intm;
Enterm:
m);
\nTheresultis%d\n"
fun(m));
第12题(35.0分)
对某一正数的值保留2位小数,并对第三位进行四舍
五入。
doublefun(floath)
i=(int)(h*1000)%10;
if(i>
=5)
return(int)(h*100+1)/100.0;
else
return(int)(h*100)/100.0;
floatm;
%f"
\nTheresultis%8.2f\n"
}
第13题(35.0分)
统计出若干个学生的平均成绩,最高分以及得最高
分的人数。
输入10名学生的成绩分别为92,87,68,56,92,
84,67,75,92,66,则输出平均成绩为77.9,
最高分为92,得最高分的人数为3人。
floatMax=0;
intJ=0;
floatfun(floatarray[],intn)
floatsum=0,ave;
Max=array[0];
{if(Max<
array[i])Max=array[i];
sum=sum+array[i];
ave=sum/n;
if(array[i]==Max)J++;
return(ave);
main()
floata[10],ave;
inti=0;
10;
a[i]);
ave=fun(a,10);
ave=%f\n"
ave);
max=%f\n"
Max);
Total:
J);
第14题(35.0分)
编写函数fun对主程序中用户输入的具有10
个数据的数组a按由大到小排序,并在主程序中输出
排序结果。
intfun(intarray[],intn)
inti,j,t;
for(i=0;
n-1;
for(j=i+1;
if(array[i]<
array[j])
{t=array[i];
array[i]=array[j];
array[j]=t;
或者(冒泡法)
for(i=1;
for(j=0;
n-i;
if(array[j]<
array[j+1])
{t=array[j];
array[j]=array[j+1];
array[j+1]=t;
inta[10],i;
请输入数组a中的十个数:
fun(a,10);
由大到小的排序结果是:
%4d"
第15题(35.0分)
实现两个整数的交换。
给a和b分别输入:
60和65,输入为:
a=65b=60
voidfun(int*a,int*b)
intt;
t=*a;
*a=*b;
*b=t;
inta,b;
Entera,b:
a,&
b);
fun(&
a=%db=%d\n"
a,b);
祝C语言不挂
考试顺利
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 修订版