《(完整word版)C语言练习题(1)汇总,推荐文档.doc》由会员分享,可在线阅读,更多相关《(完整word版)C语言练习题(1)汇总,推荐文档.doc(14页珍藏版)》请在三一文库上搜索。
1、1.编写程序,要求用户输入一个三角形的三边边长分别为a,b,c,利用海伦公式求三角形的面积。海伦公式:#include#includevoid 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粒,二毛有糖果43粒,三毛有糖果13粒。现在他们三兄弟做游戏,从大毛开始,将自己的糖果三等分,三兄弟每人一份,多余的自己吃掉;然后二毛和三毛也依次这样做,问最后三兄
2、弟各有多少糖果?#includevoid 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整除,或该年的年号能被400整除,则该年是闰年,否则不是闰年。)#includevoid main() int year; printf(请输入年份); scanf(%d,&year); if(year%4=0&year%100!=0
3、|year%400=0) printf(闰年n); else printf(平年n); 4.编写程序,随机生成一个100以内的整数。#include#include#includevoid main() int i; srand(time(NULL); i=rand()%100; printf(%dn,i);5.编写一个程序,用户输入某年某月,求该月的天数。#includevoid main() int year,month,n; printf(请输入年份月份:); scanf(%d %d,&year,&month); if(year%4=0&year%100!=0|year%400=0) i
4、f(month=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) #includevoid main() float x,f; printf(请输入x:); scanf(%f,&x);
5、if(x 0 ) y= 0 ( x = 0 ) x*x 1 ( x 0 )#includevoid main() float y,x; printf(请输入x:); scanf(%f,&x); if(x0) 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元。汇款金额由命令行输入。 #includevoid main() float a,w; print
6、f(请输入汇款金额:); scanf(%f,&a); if (a100) w=1; else if(a5000) w=a*1/100;else w=50; printf(%fn,w);9.计算1-2+3-4+5+99-100的值#includevoid main() int i,f=1,sum=0; for(i=1;i101;i+) sum=sum+i*f; f=f*(-1); printf(%dn,sum);10.打印100以内所有能被3整除的数,每5个换一行。#includevoid main() int i,n=0; for(i=1;i=100;i+) if(i%3=0) printf(
7、%d ,i); n+; if(n%5=0) printf(n); 11.计算1+1/2+1/3+1/100的值#includevoid main() float i,sum=0; for(i=1;i=100;i+) sum=sum+1/i; printf(%fn,sum);12.编写一个程序,用户输入一个整数,判断该数是否是素数。#includevoid 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是素数,
8、n); 13.编写一个程序,打印出100以内所有的素数,每5个换一行。#includevoid 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)越远,每公里运费折扣越高,公式如下: s250km 没有折扣 250=s500 2%折扣 500=s1000 5%折扣 1000
9、=s2000 8%折扣 2000=s3000 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#include#includevoid main() time_t t; t=time(NULL)
10、; 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);break;case 14:case 15:case 16:case 17:case 18:printf(下午好n);break; default:printf(晚上好n); 16.所谓水仙花数是指一个三位正整数,它各位数字的立方之和等于此正整数。例如,1
11、53是一个水仙花数,因为153=1*1*1+5*5*5+3*3*3。试编写一个程序,判断用户输入的一个三位正整数是否是水仙花数。#includevoid main()int a,b,c,n;printf(请输入一个三位数n:);scanf(%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。试编
12、写一个程序,求出所有的水仙花数。#includevoid main()int i;int a,b,c;for(i=100;i1000;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和它本身整除的整数)#includevoid 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; prin
13、tf(%dn,sum);19.有父子二人,已知父亲年龄不大于90岁,儿子年龄不大于50岁。10年前父亲的年龄是儿子的4倍,10年后父亲的年龄是儿子年龄的整数倍。求父子的年龄。#includevoid 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元,问有多少种取法?每种取法的人民币各为多少张?#includevoid main() int a,b,c,n=0; for(a=1;a20;a+) for(b=
14、1;b20;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只鸡回来,问一百只鸡中公鸡、母鸡、小鸡各多少?#includevoid main() int a,b,c; for(a=1;a20;a+) for(b=1;b33;b+) c=100-a-b; if(5*a+3*b+c/3.0)=100) printf(公鸡有%d,母鸡有%d,小鸡有%dn,a,b,c); 22.某人去购买教材和练习簿。已知教
15、材每本10元,教参每本5元,练习簿每本0.5元,他总共购买了100本,用了100元。问他购买教材、教参和练习簿各多少本?#includevoid main() int a,b,c; for(a=1;a10;a+) for(b=1;b20;b+) c=100-a-b; if(10*a+5*b+c*0.5)=100) printf(教材%d本,教参%d本,练习簿%d本n,a,b,c); 23.有红、白、黑三种球若干个,其中红、白球共25个,白、黑球共31个,红、黑球共28个,求这三种球各多少个?#includevoid main() int a,b,c,d,e,f,n,m; n=25; m=31;
16、 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为摄氏温度。请根据给定的华氏温度输出对应的摄氏温度。#includevoid 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
17、代表蟋蟀每分钟鸣叫数,T代表华氏温度。请根据蟋蟀每分钟的鸣叫数输出相应的华氏温度。#includevoid main() int c; float T; printf(请输入鸣叫数c:); scanf(%d,c); T=(c+40)/10.0; printf(华氏温度为%f,T);26.山上有一口缸可以装50升水,现在有15升,水.老和尚叫小和尚下山挑水,每次可以挑5升。问:小和尚要挑几次水才可以把水港挑满?#includevoid main() int n; n=(50-15)/5; printf(%dn,n);27.编写程序,输出10100之间个位数为7的所有素数。#includevoid
18、 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为身高当t18时,偏瘦。当18=t25时,正常体重。当25=t=27时,肥胖。#includevoid main() float t,w,h; printf(请输入体重w,身高h:); sc
19、anf(%f,%f,&w,&h); t=w/(h*h); if(t18) printf(偏瘦); else if(t25) printf(正常体重); else if(t27) printf(超重);else printf(肥胖); 30.编写程序,已知苹果每斤3.5元,香蕉每斤2.6元,橘子每斤1.8元,要求输入各类水果的重量,输出应付金额,再输入顾客所付金额,打印出找顾客的金额。#includevoid main() float a,b,c; float w,f,m; printf(请输入苹果a,香蕉b,橘子c的斤数:); scanf(%f %f %f,&a,&b,&c); w=3.5*a+2.6*b+1.8*c; printf(应付%fn,w); printf(请输入所付金额:); scanf(%f,&f); m=f-w; printf(应找金额%fn,m);31.设长方形的高为2.5,宽为1.6,编程求长方形的周长和面积。#includevoid main() double a,b,l,s; a=2.5; b=1.6; l=2*(a+b); s=a*b; printf(周长是%lf,面积是%lfn,l,s);32.编写程序,要求输出斐波那契序列1,1,2,3,5,8,13,21,的前25项,每行输出5项。
链接地址:https://www.31doc.com/p-5291160.html