C语言程序设计上机习题与参考答案.docx

上传人:b****1 文档编号:1338477 上传时间:2022-10-20 格式:DOCX 页数:16 大小:70.09KB
下载 相关 举报
C语言程序设计上机习题与参考答案.docx_第1页
第1页 / 共16页
C语言程序设计上机习题与参考答案.docx_第2页
第2页 / 共16页
C语言程序设计上机习题与参考答案.docx_第3页
第3页 / 共16页
C语言程序设计上机习题与参考答案.docx_第4页
第4页 / 共16页
C语言程序设计上机习题与参考答案.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

C语言程序设计上机习题与参考答案.docx

《C语言程序设计上机习题与参考答案.docx》由会员分享,可在线阅读,更多相关《C语言程序设计上机习题与参考答案.docx(16页珍藏版)》请在冰豆网上搜索。

C语言程序设计上机习题与参考答案.docx

C语言程序设计上机习题与参考答案

C语言程序设计上机习题与参考答案

C语言程序设计上机习题

1、给出三角形的三边a、b、c,求三角形的面积(应先判断a、b、c三边是否能构成一个三角形)。

2、某幼儿园只收2~6岁的小孩,2~3岁编入小班,4岁编入中班,5~6岁编入大班,编制程序实现每输入一个年龄,输出该编入什么班。

3、编写程序,输入一个整数,判断它能否被3、5、7整除,并根据情况输出下列信息:

(1)能同时被3、5、7整;

(2)能同时被3、5、7中的两个数整除,并输出这两个数;(3)只能被3、5、7中的一个数整除;(4)不能被3、5、7中的任何一个数整除。

4、请列出所有的个位数是6,且能被3整除的两位数。

5、求1~500中能被5整除的数的倒数之和。

6、编写程序,输入某门功课的若干个同学的成绩,以-1作为终值,计算平均成绩并输出。

7、若口袋里放入12个球,3个红球,3个白的,6个黑的,从中任取8个,编写程序,列出所有可能的取法。

8、编写一个程序,求2012!

的末尾有多少个0?

9、一个自然数平方的末几位与该数相同时,称该数为同构数。

例如:

252=625,则25为同构数。

编程求出1~1000中的同构数。

10、输入一个较大的整数,求小于该整数的最大5个素数。

11、求下列数列的近似值:

S=1-1/22+1/33-1/44+…(-1)n/nn.输入精度,当某一项的精度小于该值时停止计算。

floatfun(floatesp)

{}

voidmain()

{floatesp;

scanf(“%f”,&esp);

printf(“%f\n”,fun(esp));}

12、编写一个函数change(intx,intr),将十进制整数x转换成r(1

13、求1000以内的亲密数对。

亲密数对的定义为:

若整数a的所有因子(不包括本身)之和为b,b的所有因子(不包括b本身)之和为a,且a和b不相等,则称a与b为亲密数对。

intfun(intx)

{}

voidmain()

{intn,a,b;

参考答案

1.

#include

#include

voidmain()

{

floata=3,b=4,c=5,p=0,s=0;

if((a+b>c)&&(a+c>b)&&(b+c>a))

{

p=0.5*(a+b+c);

s=sqrt(p*(p-a)*(p-b)*(p-c));

printf("面积是%f\n",s);

}

elseprintf("不能构成三角形\n");

}

2.

#include

#include

voidmain()

{

intage;

printf("请输入年龄:

");

scanf("%d",&age);

if(age>=2&&age<=6)

if(age<=3)

printf("编入小班\n");

else

if(age<=5)

printf("编入中班\n");

else

printf("编入大班\n");

else

printf("您的输入有误!

\n");

}

3.

(1)#include

voidmain()

{

intn;

printf("请输入数n:

\n");

scanf("%d",&n);

if(n%3==0&&n%5==0&&n%7==0)

printf("能同时被3,5,7整除");

}

(2)#include

voidmain()

{

intn;

printf("请输入数n:

\n");

scanf("%d",&n);

if(n%3==0&&n%5==0&&n%7!

=0)printf("能同时被3,5整除\n");

if(n%3==0&&n%5!

=0&&n%7==0)printf("能同时被3,7整除\n");

if(n%3!

=0&&n%5==0&&n%7==0)printf("能同时被5,7整除\n");

}

(3)

#include

voidmain()

{

intn;

printf("请输入数n:

");

scanf("%d",&n);

if(n%3==0&&n%5!

=0&&n%7!

=0)printf("只能被3整除\n");

if(n%3!

=0&&n%5==0&&n%7!

=0)printf("只能被5整除\n");

if(n%3!

=0&&n%5!

=0&&n%7==0)printf("只能被7整除\n");

}

(4)#include

voidmain()

{

intn;

printf("请输入数n:

");

scanf("%d",&n);

if(n%3!

=0&&n%5!

=0&&n%7!

=0)

printf("不能被3、5、7中的任何一个数整除\n");

}

4..

#include

voidmain()

{

inti;

for(i=1;i<100;i++)

{

if(i%10==6&&i%3==0)

printf("%d",i);

}

printf("\n");

}

5.

#include

voidmain()

{

floatsum=0;

for(inti=1;i<=500;i++)

{

if(i%5==0)

sum+=(1.0/i);

}

printf("sum=%f\n",sum);

}

6.

#include

voidmain()

{

intn=0;

floats=0,sum=0;

printf("请输入若干学生成绩(输入-1结束):

");

while(s!

=-1)

{

sum+=s;

scanf("%f",&s);

n++;

}sum=sum/(n-1);

printf("该课程的平均成绩是:

%5.2f\n",sum);

}

7.

#include

voidmain()

{

intRed,White,Black;

intCount=0;

for(Red=0;Red<=3;Red++)

for(White=0;White<=3;White++)

{

Black=8-Red-White;

if(Black>=0&&Black<=6)

printf("%2d.%d个红球,%d个白球,%d个黑球\n",++Count,Red,White,Black);

}

printf("\n共有%d种!

\n\n",Count);

}

8.(这道题目就是看可以分解成多少个5相乘的数)

#include

intmain(){

intresult=0;

for(inti=1;i<=2012;++i)

for(intn=i;n%5==0;n/=5)

++result;

printf("%d\n",result);

return0;

}

9.

#include

voidmain()

{

longi,j,k;

k=10;

for(i=1;i<=1000;i++)

{

if(i==k)

{

k*=10;

}

j=i*i;

if(j%k==i)

{

printf("%ld\t%ld\n",i,j);

}

}

}

10.

#include

voidmain()

{

intn,count=0;

printf("请输入一个整数n:

");

scanf("%d",&n);

for(inti=n;i>=2;i--)

for(intt=2;t*t<=i;t++)

{

if(i%t==0)

break;

else

{

count++;

if(count<=5)

printf("%d\t",i);

break;

}

}

printf("\n");

}

11.

#include

#include

floatfun(floatesp)

{

intn=0;

floats=0;

do{

n++;

s+=pow(-1,n-1)*1.0/pow(n,n);

}while(1.0/pow(n,n)>esp);

returns;

}

voidmain()

{floatesp;

scanf("%f",&esp);

printf("%f\n",fun(esp));

}

12.

#include

voidchange(intx,intr)

{

inta[32],i;

for(i=0;x!

=0;i++)

{

a[i]=x%r;

x/=r;

}

for(i--;i>=0;i--)

printf("%d",a[i]);

printf("\n");

}

voidmain()

{

intx,r;

printf("请输入x和r:

");

scanf("%d%d",&x,&r);

change(x,r);

}

13.

#include

intfun(intx)

{

inty=0;

for(inti=1;i

{

if(x%i==0)

y+=i;

}

returny;

}

voidmain()

{

intn,a,b;

for(n=1;n<1000;n++)

{

b=fun(n);

a=fun(b);

if(a!

=b&&a==n)

printf("%d%d\n",a,b);

}

}

14.

#include

intfunc(intn)

{

if(n==1||n==0)

return1;

elsereturn2*func(n-1)+func(n-2);

}

voidmain()

{

printf("%d\n",func(20));

}

15.

#include

#include

longf(chars[])

{longt=0;

for(inti=0;i<10;i++)

{

t+=(s[i]-48)*pow(10,9-i);

}

returnt;

}

voidmain()

{chars[10];

longintres;

gets(s);

res=f(s);

printf("%ld\n",res);

}

16.

#include

intfun(floataa[],intn)

{int

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

当前位置:首页 > PPT模板 > 动物植物

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

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