C语言练习题(1)_第1页
C语言练习题(1)_第2页
C语言练习题(1)_第3页
C语言练习题(1)_第4页
C语言练习题(1)_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1.编写程序,要求用户输入一个三角形的三边边长分别为a,b,c,利用海伦公式求三角形的面积。海伦公式:#include<stdio.h>#include<math.h>void main() float a,b,c,p,s; printf("请输入三边a,b,c:"); scanf("%f %f %f",&a,&b,&c); p=(a+b+c)/2; s=sqrt(p*(p-a)*(p-b)*(p-c); printf("%f,%fn",p,s);2.三个小朋友,大毛有糖果50粒,二毛有

2、糖果43粒,三毛有糖果13粒。现在他们三兄弟做游戏,从大毛开始,将自己的糖果三等分,三兄弟每人一份,多余的自己吃掉;然后二毛和三毛也依次这样做,问最后三兄弟各有多少糖果?#include<stdio.h>void main() int a=50,b=43,c=13; a=a/3; b=a+b; b=b/3; c=a+b+c; a=a+b; c=c/3; b=b+c; a=a+c; printf("%d,%d,%dn",a,b,c);3.编写程序,要求用户输入某年年份,然后判断是否为闰年。(闰年的条件是:该年的年号能被4整除且不能被100整除,或该年的年号能被40

3、0整除,则该年是闰年,否则不是闰年。)#include<stdio.h>void main() int year; printf("请输入年份"); scanf("%d",&year); if(year%4=0&&year%100!=0|year%400=0) printf("闰年n"); else printf("平年n"); 4.编写程序,随机生成一个100以内的整数。#include<stdio.h>#include<stdlib.h>#includ

4、e<time.h>void main() int i; srand(time(NULL); i=rand()%100; printf("%dn",i);5.编写一个程序,用户输入某年某月,求该月的天数。#include<stdio.h>void main() int year,month,n; printf("请输入年份月份:"); scanf("%d %d",&year,&month); if(year%4=0&&year%100!=0|year%400=0) if(month

5、=2) n=29; else if(month=2) n=28; switch(month) case 2:break; case 1: case 3: case 5: case 7: case 8: case 10: case 12:n=31;break; case 4: case 6: case 9: case 11:n=30;break; default:printf("输入错误请重输:"); printf("%dn",n);6.求分段函数的值。        0 (x<0)F(x)

6、=       2X+1 (x>=0)     #include<stdio.h>void main() float x,f; printf("请输入x:"); scanf("%f",&x); if(x<0) f=0; else f=2*x+1; printf("%fn",f);7.已知函数 x + 3 ( x > 0 ) y= 0 ( x = 0 ) x*x 1 ( x < 0 )#incl

7、ude<stdio.h>void main() float y,x; printf("请输入x:"); scanf("%f",&x); if(x>0) y=x+3; else if(x=0) y=0; else y=x*x-1; printf("%fn",y);编程输入x的值,输出y的值。8.编写程序,计算邮局汇款的汇费。如果汇款金额小于100元,汇费为1元;如果汇费在100元与5000元之间,按1%收取汇费;如果金额大于5000元,汇费为50元。汇款金额由命令行输入。  #include<s

8、tdio.h>void main() float a,w; printf("请输入汇款金额:"); scanf("%f",&a); if (a<100) w=1; else if(a<5000) w=a*1/100;else w=50; printf("%fn",w);9.计算1-2+3-4+5+99-100的值#include<stdio.h>void main() int i,f=1,sum=0; for(i=1;i<101;i+) sum=sum+i*f; f=f*(-1); prin

9、tf("%dn",sum);10.打印100以内所有能被3整除的数,每5个换一行。#include<stdio.h>void main() int i,n=0; for(i=1;i<=100;i+) if(i%3=0) printf("%d ",i); n+; if(n%5=0) printf("n"); 11.计算1+1/2+1/3+1/100的值#include<stdio.h>void main() float i,sum=0; for(i=1;i<=100;i+) sum=sum+1/i;

10、printf("%fn",sum);12.编写一个程序,用户输入一个整数,判断该数是否是素数。#include<stdio.h>void main() int n,i,f; scanf("%d",&n); for(i=2;i<=n/2;i+) f=1; if(n%i=0) f=0; break; if(f=0) printf("%d不是素数",n); else printf("%d是素数",n); 13.编写一个程序,打印出100以内所有的素数,每5个换一行。#include<std

11、io.h>void main() int i,j,f,n=0; for(i=2;i<=100;i+) f=1; for(j=2;j<=i/2;j+) if(i%j=0) f=0; break; if(f=1) printf("%d ",i); n+;if(n%5=0) printf("n"); 14.一个运输公司对用户计算运费公式:总运费=单价*重量*距离*(1-折扣)。单价为每吨每公里为1元。路程(s)越远,每公里运费折扣越高,公式如下: s<250km 没有折扣 250=<s<500 2%折扣 500=<s&

12、lt;1000 5%折扣 1000=<s<2000 8%折扣 2000=<s<3000 10%折扣 3000=<s 15%折编写一个程序,完成以下功能:当运输公司输入货物的吨数和公里数,就能计算出这次运单的运费。15.编写一个程序,获取系统的当前时间(取整点),若时间为5、6、7、8点,则显示“早上好”;若时间为9、10、11点,则显示“上午好”;若时间为12、13点,则显示“中午好”;若时间为14、15、16、17、18点,则显示“下午好”;若时间为19、20、21、22、23、24、1、2、3、4点,则显示“晚上好”。#include<stdio.h&g

13、t;#include<time.h>#include<stdlib.h>void main() time_t t; t=time(NULL); struct tm *tt; tt=localtime(&t); switch(tt->tm_hour) case 5:case 6:case 7:case 8:printf("早上好n");break;case 9:case 10:case 11:printf("上午好n");break;case 12:case 13:printf("中午好n");br

14、eak;case 14:case 15:case 16:case 17:case 18:printf("下午好n");break; default:printf("晚上好n"); 16.所谓水仙花数是指一个三位正整数,它各位数字的立方之和等于此正整数。例如,153是一个水仙花数,因为153=1*1*1+5*5*5+3*3*3。试编写一个程序,判断用户输入的一个三位正整数是否是水仙花数。#include<stdio.h>void main()int a,b,c,n;printf("请输入一个三位数n:");scanf(&qu

15、ot;%d",&n);a=n/100;b=n%100/10;c=n%100%10;if(n=a*a*a+b*b*b+c*c*c)printf("%d是水仙花数n",n);else printf("%d不是水仙花数n",n);17.所谓水仙花数是指一个三位正整数,它各位数字的立方之和等于此正整数。例如,153是一个水仙花数,因为153=1*1*1+5*5*5+3*3*3。试编写一个程序,求出所有的水仙花数。#include<stdio.h>void main()int i;int a,b,c;for(i=100;i<10

16、00;i+)a=i/100;b=i%100/10;c=i%100%10;if(i=a*a*a+b*b*b+c*c*c)printf("%dn",i);18求200以内的所有素数的和。(素数是一个大于1且只能被1和它本身整除的整数)#include<stdio.h>void main() int i,j,sum=0,f; for(i=2;i<=200;i+) for(j=2;j<=i/2;j+) f=1; if(i%j=0) f=0; break; if(f=1) sum=sum+i; printf("%dn",sum);19.有父

17、子二人,已知父亲年龄不大于90岁,儿子年龄不大于50岁。10年前父亲的年龄是儿子的4倍,10年后父亲的年龄是儿子年龄的整数倍。求父子的年龄。#include<stdio.h>void main() int f,s; for(s=11;s<=30;s+) f=4*s-30; if(f+10)%(s+10)=0) printf("%d,%dn",f,s); 20.有面值为一元、二元、五元的人民币若干,从中取出20张使其总值为60元,问有多少种取法?每种取法的人民币各为多少张?#include<stdio.h>void main() int a,b,

18、c,n=0; for(a=1;a<20;a+) for(b=1;b<20;b+) c=20-a-b;if(1*a+2*b+5*c)=60) printf("%d,%d,%dn",a,b,c); n+; printf("%dn",n);21.如今市场上公鸡一只5美元、母鸡一只3美元,小鸡一美元3只,现有100美元,需要买100只鸡回来,问一百只鸡中公鸡、母鸡、小鸡各多少?#include<stdio.h>void main() int a,b,c; for(a=1;a<20;a+) for(b=1;b<33;b+) c=

19、100-a-b; if(5*a+3*b+c/3.0)=100) printf("公鸡有%d,母鸡有%d,小鸡有%dn",a,b,c); 22.某人去购买教材和练习簿。已知教材每本10元,教参每本5元,练习簿每本0.5元,他总共购买了100本,用了100元。问他购买教材、教参和练习簿各多少本?#include<stdio.h>void main() int a,b,c; for(a=1;a<10;a+) for(b=1;b<20;b+) c=100-a-b; if(10*a+5*b+c*0.5)=100) printf("教材%d本,教参%d

20、本,练习簿%d本n",a,b,c); 23.有红、白、黑三种球若干个,其中红、白球共25个,白、黑球共31个,红、黑球共28个,求这三种球各多少个?#include<stdio.h>void main() int a,b,c,d,e,f,n,m; n=25; m=31; d=28; e=m-n; f=d+e; c=f/2; b=31-c; a=28-c; printf("红球有%d个,白球有%d个,黑球有%d个n",a,b,c);24.将华氏温度转化成摄氏温度。公式为:C=(5.0/9)*(F-32),其中F为华氏温度,C为摄氏温度。请根据给定的华氏温

21、度输出对应的摄氏温度。#include<stdio.h>void main() float C,F; printf("请输入华氏温度F:"); scanf("%f",&F); C=(5.0/9)*(F-32); printf("摄氏温度为%f度",C);25.根据观察,蟋蟀的名叫频率与温度有关,具体的公式为T=(c+40)/10.0 。其中,c代表蟋蟀每分钟鸣叫数,T代表华氏温度。请根据蟋蟀每分钟的鸣叫数输出相应的华氏温度。#include<stdio.h>void main() int c; floa

22、t T; printf("请输入鸣叫数c:"); scanf("%d",c); T=(c+40)/10.0; printf("华氏温度为%f",T);26.山上有一口缸可以装50升水,现在有15升,水.老和尚叫小和尚下山挑水,每次可以挑5升。问:小和尚要挑几次水才可以把水港挑满?#include<stdio.h>void main() int n; n=(50-15)/5; printf("%dn",n);27.编写程序,输出10100之间个位数为7的所有素数。#include<stdio.h&g

23、t;void main() int i,j,f; for(i=2;i<=100;i+) f=1; for(j=2;j<=i/2;j+) if(i%j=0) f=0; break; if(f=1&&i%10=7) printf("%d ",i); 28.编写程序,求1-2+3-4+5-6+99-100的值。29.编程实现根据某人的身高和体重判断其身体指数。身体指数与体重、身高的关系为:身体指数 t=w/(h*h);其中w为体重,h为身高当t<18时,偏瘦。当18<=t<25时,正常体重。当25<=t<27时,超重。当t>=27时,肥胖。#include<stdio.h>void main() float t,w,h; printf("请输入体重w,身高h:");

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论