C语言上机练习题及答案.docx

上传人:b****1 文档编号:14052973 上传时间:2023-06-20 格式:DOCX 页数:15 大小:18.08KB
下载 相关 举报
C语言上机练习题及答案.docx_第1页
第1页 / 共15页
C语言上机练习题及答案.docx_第2页
第2页 / 共15页
C语言上机练习题及答案.docx_第3页
第3页 / 共15页
C语言上机练习题及答案.docx_第4页
第4页 / 共15页
C语言上机练习题及答案.docx_第5页
第5页 / 共15页
C语言上机练习题及答案.docx_第6页
第6页 / 共15页
C语言上机练习题及答案.docx_第7页
第7页 / 共15页
C语言上机练习题及答案.docx_第8页
第8页 / 共15页
C语言上机练习题及答案.docx_第9页
第9页 / 共15页
C语言上机练习题及答案.docx_第10页
第10页 / 共15页
C语言上机练习题及答案.docx_第11页
第11页 / 共15页
C语言上机练习题及答案.docx_第12页
第12页 / 共15页
C语言上机练习题及答案.docx_第13页
第13页 / 共15页
C语言上机练习题及答案.docx_第14页
第14页 / 共15页
C语言上机练习题及答案.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言上机练习题及答案.docx

《C语言上机练习题及答案.docx》由会员分享,可在线阅读,更多相关《C语言上机练习题及答案.docx(15页珍藏版)》请在冰点文库上搜索。

C语言上机练习题及答案.docx

C语言上机练习题及答案

1输入三个整数x,y,z,把这三个数由小到大输出。

#include

voidmain()

{

intx,y,z,a;

scanf("%d,%d,%d",&x,&y,&z);

if(x>y){a=x;x=y;y=a;

}

if(x>z){a=x;x=z;z=a;

}

if(y>z){a=y;y=z;z=a;

}

printf("%d,%d,%d\n",x,y,z);

}

2输入圆得半径,输出圆得周长与面积。

#include

#definePI3、1415926

#defineS==PI*r*r

#defineV(4、0/3)*PI*r*r*r

voidmain()

{

doubler;

printf("pleaseinputr:

");

scanf("%lf",&r);

printf("areais%、4lf\n",S);

printf("volumeis%、4lf\n",V);

}

输入正方形得边长,输出正方形得周长与面积。

#include

voidmain()

{

floatc,zc,mj;

printf("输入您得正方形");

scanf("%f\n",&c);

zc=4*c;

mj=c*c;

printf("周长%f,面积%f,边长%f",zc,mj,c);

}

3用格式输入函数输入3个字符,并用输出函数反向输出3个字符与她们得ASCII码。

#include

intmain()

{char-ch1,ch2,ch3;

printf("pleaseinputthreecharacters:

\n");

scanf("%C%C%c",&ch1,&ch2,&ch3);

printf("%c\n%d\n",ch3,ch3);

printf("%c\n%d\n",ch2,ch2);

printf("%c\n%d\n",ch1,ch1);

}

输入一个摄氏温度,要求输出华氏温度。

公式为f=9/5*c+32。

#include

voidmain()

{

floatC,F;

scanf("%f",&F);

C=5、0/9*(F-32);

printf("%8、2f",C);

}

4。

比较两个数大小得题

#include

voidmain()

{inta,b;

scanf("%d,%d",&a,&b);

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

elseprintf("%d\n",b);

}

第二题:

此题作废(千万不要用)

#include

voidmain()

{chara,b,c;

scanf("%c,%c,%c",&a,&b,&c);

while((a<97||a>122)||(b<97||b>122)||(c<97||c>122));

{

printf("您输入非三个小写字母,请重新输入:

\n");

scanf("%c,%c,%c",&a,&b,&c);

}

printf("%c,%c,%c\n",a-32,b-32,c-32);

}

5输入任意10个数,求她们得平均值。

#include

voidmain()

{

Printf("请输入10个整数:

");

inta[10],k=0,sum=0;

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

{

i>a[i];

if10>=a[i]>0++k;

sum=sum+a[i];

}

floatave=sum/10、0

printf("平均值为:

%f\n",ave);

}

6实现从键盘输入两个整数,按从小到大次序输出这两个数。

#include

voidmain()

{

inta,b,tem;

printf("inputtwonumbers:

\n");

scanf("%d,%d",&a,&b);

if(a>b)

{

tem=a;a=b;b=tem;

}

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

7从键盘输入三个整数,输出最大得那个数。

#include

voidmain()

{

inta,b,c,max;

printf("请输入三个整数:

\n");

scanf("%d%d%d",&a,&b,&c);

max=a>b?

a:

b;

max=max>c?

max:

c;

printf(“max=%d\n”,max);

}

}

8输入任意一个三位数,将其各位数字反序输出(例如输入123,输出321)。

#include

voidmain()

{

intx,y,z,n;

printf("pleaseinputanintegerlessthan1000\n");

scanf("%d",&n);

x=n/100;n=n-100*x;y=n/10;z=n-10*y;

if(x>0)printf("%d%d%d\n",z,y,x);

elseif(y>0)printf("%d%d\n",z,y);

elseprintf("%d\n",z);

}

9输入三角形得边长,求三角形面积。

(面积=sqrt(s(s-a)(s-b)(s-c)),s=(a+b+c)/2)。

#include

voidmain()

{

floata,b,c,s,area;

intok=0;

printf("inputa,b,c:

");

scanf("%f,%f,%f",&a,&b,&c);

{

a+b>c?

ok++:

0;

a+c>b?

ok++:

0;

b+c>a?

ok++:

0;

ok==3

(s=1/2*(a+c+b);

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

printf("s=%f\n,area=%f\n",s,area);

}

10输入2个数,比较其大小,将较大得数输出。

#include

voidmain()

{

inta,b,c,max,min;

printf(“Inputa=”);

scanf(“%d”,&a);

printf(“Inputb=”);

scanf(“%d”,&b);

If(a>b)

printf(“较大得数就是%d\n”,a);

else

printf(“较大得数就是%d\n”,b);

}

11输入任意三个整数,求它们得与及平均值。

#include“stdio、h"

voidmain()

{inta,b,c,sum;floatave;

scanf("%d%d%d",&a,&b,&c);

sum=a+b+c;ave=(a+b+c)/3、0;

printf("三个数得与为:

%d\n",sum);

printf("三个数得平均值为:

%f\n",ave);

}

12求解方程ax2+bx+c=0得实数根。

a,b,c由键盘输入,a≠0且b2-4ac>0。

#include

#include

voidmain(){

floata,b,c,x1,x2;

printf("请输入a,b,c得值:

");

scanf("%f%f%f",&a,&b,&c);

if(b*b-4*a*c<=0)

printf("输入得系数不对,b2-4ac不大于0!

程序退出!

\n");

else{x1=(-b+sqrt(b*b-4*a*c))/2*a;

x2=(-b-sqrt(b*b-4*a*c))/2*a;

printf("x1=%、2f\n",x1);

printf("x2=%、2f\n",x2);}

}

13写一个程序,输入一个班学生得成绩,求全班得平均成绩。

#includeusingnamespacestd;voidfailnum(intscore[],intnum){intn=0;for(inti=0;i

"<=n)number++;}cout<<"平均分为:

"<

"<=90)n5++;}cout<<"分数在60以下占:

"<<((n1*1、0)/num)*100<<"%"<

"<<((n2*1、0)/num)*100<<"%"<

"<<((n3*1、0)/num)*100<<"%"<

"<<((n4*1、0)/num)*100<<"%"<

"<<((n5*1、0)/num)*100<<"%"<

";cin>>num;cout<<"输入内容(每个数不超出0-100),用空格分开:

"<>score[i];failnum(score,num);average_num(score,num);stastics(score,num);return0;}

14编写程序输出如下图形:

(没有得!

*

**

***

****

从键盘输入一个整数判断就是否为素数。

#include"stdio、h"

voidmain()

inti,n;

printf("pleaseinputapositivenumber:

");

scanf("%d",&n);

for(i=2;i<=n-1;i++)

{

if(n%i==0)break;

}

if(i<=n-1)printf("%d不就是素数\n",n);

elseprintf("%d不就是素数\n",n);

}

15输入一个三位数,判断就是否就是一个“水仙花数”,水仙花数就是指3位数得各位数字得立方与等于这个三位数本身。

例如153=1*1*1+5*5*5+3*3*3。

#include

voidmain()

{intx,a,b,c;

scanf("%d",x);

a=x/100;b=(x/10)%10;c=x%10;

if(x==a*a*a+b*b*b+c*c*c)

printf("YES");elseprintf("NOT");

}

16输入年号,判断它就是否为闰年。

#include

voidmain()

{

inty;

scanf("%d",&y);

if(y%400==0||y%4==0&&y%100!

=0)

printf("Yes、\n");

else

printf("No、\n");

}

17用for循环语句求n!

用递归法求n!

#include

intfac(intn);

voidmain()

{

intn;

printf("pleaseinputn(n>=0):

");

scanf("%d",&n);

printf("%d!

=%d\n",n,fac(n));

}

intfac(intn)

{

intt;

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

t=1;

else

t=n*fac(n-1);

else

return(t);

}

18用函数实现求最大公约数得程序。

#include

intgcd(inta,intb);

voidmain()

{inta,b,m;

printf("pleaseinputa,b:

");

scanf("%d,%d",&a,&b);

m=gcd(a,b);

printf("gcd(%d,%d)=%d\n",a,b,m);}

intgcd(inta,intb)

{

intt

do{t=a%d;

a=b;b=t;}

while(b!

=0);

return(a);

}

19用函数实现求最小公倍数得程序。

#include

intgcd(inta,intb);

intlcm(inta,intb);

voidmain()

{inta,b,m,n;

printf("pleaseinputa,b:

");

scanf("%d,%d",&a,&b);

m=gcd(a,b);

n=lcm(a,b);

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

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

}

intgcd(inta,intb)

{intt

do

{

t=a%d;

a=b;b=t;}

while(b!

=0);

return(a);}

intlcm(inta,intb)

{

intt;

t=a*b/gcd(a,b);

return(t);

}

20编写判断水仙花得函数,从主函数输入一个三位正整数N,在主函数中调用判断水仙花数得函数,求出三位数中所有得水仙花数。

水仙花数就是指3位数得各位数字得立方与等于这个三位数本身。

例如153=1*1*1+5*5*5+3*3*3。

#include

voidf(m)

{intx,y,z;

x=m/100;

y=m/10%10;

z=m%10;

if(m==x*x*x+y*y*y+z*z*z)

printf("%d就是水仙花数\n",m);

elseprintf("%d不就是水仙花数\n",m);}

voidmain()

{intn;

scanf("%d",&n);

f(n);

}

21将一个正整数逆续输出。

#include

voidmain()

{

intn,digit;

scanf("%d",&n);

while(n!

=0)

{digit=n%10;

printf("%d\n:

digit);

n=n/10;}

}

22从键盘输入一个正整数n,计算该数得各位数字之与并输出。

例如,输入数就是5246,则计算5+2+4+6=17并输出。

#include

voidmain()

{

intx,s=0,digit;

scanf("%d",&x);

while(x!

=0)

{digit=x%10;循环

x=x/10;

s=s+digit;}

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

}

23输出九九乘法表。

#include

voidmain()

{

inta,b;for(a=1;a<=9;a++);

{

for(b=1;b<=a;b++);

{

printf("%d*%d=%-2d",a,b,a*b);

}

printf("\n");

}

23用数组实现从键盘输入10个数,并且输出这10个数。

#include

voidmain()

{

inta[10],*p=a,i;

printf("Iput10numbers:

\n");

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

scanf("%d",p+i);

printf("a[10]:

");

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

printf("%3d",*(p+i));

printf("\n");

}

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

当前位置:首页 > 医药卫生 > 基础医学

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

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