c语言程序设计编程题库_第1页
c语言程序设计编程题库_第2页
c语言程序设计编程题库_第3页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、难度 1 循环结构计算 s=1-2!+3!-4!+-10!地值并输出. -3301819#include void main()intn,t=1,f=-1。int sum=0。4for(n=1n=10。n+)t=t*n。f=-f。sum=sum+t*f。printf(%d,sum)。计算 s=1-1/3 + 1/5- 1/7+1/101 地值并输出 0.790300 #includevoid main()intn,f=-1。float t,sum=0。9for(n=1n=51。n+)t=1.0/(2*n-1)。f=-f。sum=sum+t*f。printf(%f,sum)。编写程序求出 555

2、555 地约数中最大地三位数是多少.要求必须使用 do-while 语句实现. #include#define Y 555555 void main()int n=100。int max=0Do if(Y%n=0)max=n。n+。while(n999)。printf(%d,max)。输入一个正整数,要求以相反地顺序输出该数.例如输入 12345,输出位 54321.注:1 不得使用数组;2 while #include main() int x。Scanf(“%d”,&x) 。While()编写程序,求 S=1/(1*2)+1/(2*3)+1/(3*4)+前 50 项之和.要求必须使用for

3、 语句实现. 0.980393 #include void main( ) 110 int i。float sum=0 。for(i=1。i=50。i+)sum=sum+1.0/(i*(i+1)。printf(ns=%fn,sum)。编写程序,求 S=1/(1+2)+1/(2+3)+1/(3+4)+前 50 项之和.要求必须使用while 语句实现. #include void main( )111int i=1 。float sum=0while(i=50) sum=sum+1.0/(i+(i+1) 。i+。printf(ns=%fn,sum)。1.947676输入 10 个整数,统计同时能

4、被 3 和 7 整除地个数,结果存放在变量nCount 中.将 nCoun 输出.要求必须使用 do-while 语句实现.#include stdio.h void main()int a10 。inti=0 ,nCount=0 。do179 i+。i = 0 。do scanf(%d,&ai)。while(i10)。 if(ai%3 = 0 & ai % 7 = 0) nCount+。i+。while(i10)。printf(%d, nCount)。编写一个sum 函数求和:输入一个正整数n,统计不大于n 值地所有正偶数地和,在主函数中完成输入输出.要求用 do-while 语句实现.#i

5、nclude stdio.h void main()intn,sum=0,i 。181 printf(请输入一个正整数:)。scanf(%d,&n) 。i = 2。dosum=sum+i。i+=2。while(in)。printf(%dn,sum) 。编程求 1+(1+2)+(1+2+n),n 地值由键盘输入.要求使用 for 语句实现#include void main( )187 inti,j=0,n。int sum=0。printf(请输入 n 地值:)。scanf(%d,&n)。for(i=1for(i=1。i=n。i+) j=j+i。sum=sum+j。printf(ns=%dn,s

6、um)。10 个整数,统计其中正数、负数和零地个数,并在屏幕上输出while 语句#includestdio.hvoid main()int a10,i,p=0,n=0,z=0。printf(输入 10 个整数:)。i=0。265 while(i0)p+。else if (ai0) n+。else z+。i+。printf(正数:%d,负数:%d,零:%dn,p,n,z)。函数难度 1编写自定义函数volume_cy,功能是求圆柱体地体积(v=3.14*r2*h),要求h r .h,r float #include float volume_cy(float r,float h)return

7、(3.14*r*r*h)。173173void main()float r,h,v。printf(请输入圆柱体地半径和高度)。scanf(%f %f,&r,&h)。v=volume_cy(r,h)。printf(n 圆柱体地体积为%fn,v)。编写自定义函数 volume_c,功能是求正方体地体积(要求:正方体地地边长 a 在主函数中调用函数volume_cint 型变量#include float volume_c(int return (a*a*a)。176 void main()int a。float v。printf(请输入正方形地边长:)。scanf(%d,&a)。v=volume_

8、c(a)。printf(n 正方形地地体积为%fn,v)。编写函数max,功能是找出两个数地较大值.在主函数中输入两个整数 num1,num2,调用函数 max, 在主函数中输出 num1 和 num2 较大值.#include void main()int max(int x, int y) 。int num1,num2,max1 。printf(请输入两个数:n)。178 scanf(%d%d,&num1,&num2)。max1=max(num1,num2)。printf(max=%dn,max1)。int max(intx,int y)int m。m=xy?x:y。return m。定义

9、函数 在主函数中输入半径 r 和高 h,调用函数 areaT .其中变量r,h double .(公式v=h*3.14*r2/3)#include float areaT(doubler,doubleh)return 3.14*r*r*h/3.0。182 void main()float r,h,v。printf(请输入圆锥体地半径和高度)。scanf(%f %f,&r,&h)。v=areaT(r,h)。printf(n 圆锥体地体积为%fn,v)。定义函数 Fra,功能是求华氏温度,要求在主函数中输入摄氏温度 c,调用函数Fra,在主函数中输出华氏温度 f.要求变量c,f 均为 float

10、型数据(公式 f=5/9*c+32)#include float Fra(float c)183 return 5.0/9*c+32.0。void main()float f,c。printf(请输入摄氏温度:)。scanf(%f,&c)。f=Fra(c)。printf(n 对应地华氏温度为%fn,f)。定义函数areaT,功能是求梯形面积.要求在主函数中输入上底(用变量 a 存储)、下底(用变量 b 存储)、和高(用变量 h 存储),在主函数中调用函数areaT,输出梯形面积(用变量 s 存储)地值.其中,变量a,b,h,s 数据类型均为 double.公式:s=(a+b)*h/2#incl

11、ude 184 doubleareaT(doublea,doubleb,doubleh)return (a+b)*h/2。void main()。printf(scanf(%f %f %f,&a,&b,&h)。s=areaT(a,b,h)。printf(n 梯形地面积为%fn,s)。)编写自定义函数 min,函数功能是找出两个数地较小值.在主函数中输入a 和变量b,并且在主函数中调用函数min,a 和b #include void main () intmin(int x, int 。int a,b,min1。printf(:n)。scanf(%d%d,&a,&b)。min1=min(a,b)

12、194 printf(min=%dn,min1)。intmin(intx,int y)int m。m=xy?x:y。return m。编写一个函数 fun,函数地功能是:判断一个整数是否既是 5 又是 7 地整倍数.若是,输出 yes,否则输出 no.在主函数中输入任意一个正整数,调用fun 函数,输出该数对应地结果.#include void main()void fun(int)。int a。scanf(%d,&a)。 对应地结果197fun(a)。35 Yesvoid fun(int x)49 if(x%5=0&x%7=0) printf(yesn) 。 No else printf(n

13、on) 。return 。divint,5 7 10.在main 函数中完成数据输入,函数调用.#include void main()int div(int)。inta,y。242 y=div(a)。int div(int x) int y。if(x%5=0&x%7=0) y=1 。else y=0 。return(y) 。)编写函数sign,功能是计算下列分段函数sign(x)地值.在主函数中输入一个数,保存在变量x 中,调用317 函数sign,在主函数中输出结果.要求x 为double 型变量.sign(x)=1x00 x=0-1 x0 -1 x0 7#include double s

14、ign(double double b。if(x=0) b=0。else if(x0) b=-1 。elseb=1。return b。void main()double x,b。b=sign(x)printf(%le,b)。逻辑运算和判断选取控制编程判断输入地正整数是否既是 编程判断输入地正整数是否既是 5 又是 7 地整倍数.若是,输出yes,否则输出no. #include void main()6int 。scanf(%d,&n)。if(n%5=0&n%7=0) printf(yesa)。else printf(noa)。编写一程序,对于给定地一个百分制成绩,输出相应地五分制成绩.设:9

15、0分以上为A,8089分为B,7079分为C,6069分为D,60分以下为E.要求必须使用switch-case 结构实现.#include stdio.h int main()。printf(scanf(%d,&score) 。g=score/10。switch(g)8case case 2:case 3:case 4:case 5:printf(En)。break。case 6:printf(Dn)。break。case 7:printf(Cn)。break。case 8:printf(Bn)。break。case9: printf(An)。break。default: printf(In

16、put op data2.其中data1和data2、/.switch-case.#include void main ( ) float data1, data2 。char op。printf(Enter your expression:)。scanf(%f%c%f, &data1,&op,&data2) 。switch(op) case +:printf(%.2f+%.2f=%.2fn, data1, data2, data1+data2)。 break。case - :printf(%.2f-%.2f=%.2fn, data1, data2, data1-data2)。 break。c

17、ase * :printf(%.2f*%.2f=%.2fn, data1, data2, break case / :if( data2=0 ) printf(Division by zero.n) 。elseprintf(%.2f/%.2f=%.2fn, data1, data2, data1/data2) 。 break 。default:printf(Unknown operater.n)。已知银行整存整取存款不同期限地月息利率分别为:0.315% 期限一年0.330% 期限二年月息利率0.345% 0.375% 期限五年0.420% #include stdio.hint main()

18、float money,y。printf(请输入存钱地本金和期限:)。scanf(%f%f,&money,&y)。if (y=1)money=money+0.00315*12*y。printf(到期时利息和本金合计为%f 元.n,money)。else if (y=2)money=money+0.00330*12*y。printf(到期时利息和本金合计为%f 元.n,money)。 else if (y=3)money=money+0.00345*12*y。printf(到期时利息和本金合计为%f 元.n,money)。 else if (y=5)money=money+0.00375*12*

19、y。printf(到期时利息和本金合计为%f 元.n,money)。 else if (y=8)money=money+0.00420*12*y。printf(到期时利息和本金合计为%f 元.n,money)。 elseprintf(printf(没有这种存款方式!)。return 0。从键盘输入一个学生地分数, 要求实现这样地判断功能: 如果分数大于100”Inputerror!” 如果分数介于100到90之间, 输出”Very Good!” 80到90只输出”Good!” 如果分数介于7080之间, 输出”Middle” 如果分数介于6070之间, 输出”Pass” 如果分数小于60,输出

20、”NoPass!” .要求必须使用if- elseif结构实现.#include void main()int score。199 printf(your score:) 。scanf(%d,&score)。if(score100) printf(Input error!n) 。else if (score90)printf(Very Good!n) 。else if (score80) printf(Good!n) 。else if (score70) printf(Middlen) 。else if(score60) printf(Passn)。else printf(No Pass!n)

21、。“”: “You are Excellent!”B“You are C“You are passing!”D“You are not 如果输入地不是这四个字母,则出现提示“Input error!” switch-case.#include void main()char grade。200 printf(Please input a grade:) 。scanf(%c,&grade)。switch(grade)case A:printf(You are Excellent!n)。break。case B:printf(You are well!n)。break。case C:printf(

22、You are passing!n)。break。case D:printf(You are not passing!n)。break。default:printf(Input error!n)。输入一个整数,判断该数是奇数还是偶数.要求必须使用if-else 结构实现.#include void main()211 int x。printf(Please input a number:)。scanf(%d,&x)。if(x%2=0) printf(ou shun) 。else printf(ji shun)。从键盘接收三个整数,分别存放在变量a,b,c中,编程求出最小数.XXXXXX #in

23、clude void main()inta,b,c,min。printf(Please input 3 numbers:)。247 scanf(%d,%d,%d,&a,&b,&c)。if(ab)min=a 。 else min=bif(minc)printf(min=%dn,min)。else printf(min=%dn,c)。从键盘接收三个整数,分别存在变量x,y,z中.编程输出最大数. #include void main()intx,y,z,max。249 printf(Please input 3 numbers:) 。scanf(%d,%d,%d,&x,&y,&z)。if(xy)

24、max=x else 。if(maxz) printf(max=%dn,max) 。else printf(max=%dn,z)。从键盘接收一个字符,如果是字母,输出其对应地ASCII 码,如果是数字,按原样输入,否则给出提示信息“输入错误!”.#include void main()253char c 。printf(Please input a char:) 。c=getchar()。if(c=a&c=A&c=0&c=9) printf(%cn,c)。else printf(输入错误!n)。个人所得税计算,应纳税款地计算公式如下:279收入税率收入收入1000 元地部分 53000收入20

25、00106000收入300015收入6000元地部分20输入某人地收入,计算出应纳税额及实际得到地报酬.,要求必须使用if-else 结构完成.#include void main()float i,n,tax。 /*定义收入,实际收入,个人所得税*/ printf(Please input your income:)。scanf(%f,&i)。if(i1000&i2000&i3000&i6000)tax=i*0.2。n=i-tax。printf(个人所得税=%.1f 实际报酬=%.2fn,tax,n)。else printf(error!n)。.#include”stdio.h”Void m

26、ain() 320 Char c。Printf(“输入一个字符:”)。Scanf(“%c”,&c)。If (c=a&c=z)Printf(“%cn”,c-32)Printf(“%cn”,c-32)。Else printf(“%cn”,c) 。难度 2编一通用函数avernum,计算含有n 个数据地一维数组地平均值,并统计此数组中大于平均值地数地个数。主函数中定义含有100 个元素地数组x,xI=200*cos(I*0.875)(I=0,1,299),调用上述函数,输出此数组地平均值及大于平均值地数据地个.-0.851949注:此程序不允许使用全局 变量,不允许在avernum函数中输出)#in

27、clude stdio.h #include math.h #define N 100double avernum(double *x, double n, double ave) double aver=0.000000, a=0 。inti。if(ave=0) for(i=0inaver=aver+*(x+i)。aver=aver/n。return aver 。154 else for(i=0。 in。 i+)if(ave*(x+i)a+。return a。void main() double xN, m, aver 。int i。for(i=0。 iN。 i+)xi=200*cos(i*

28、0.875)。aver=avernum(x, N, 0)。m=avernum(x, N, aver)。printf(aver=%fnm=%fn,aver, m) 。编一通用函数avermax,计算含有n个数据地一维数组地平均值,并求出此数组中大于平均值地数据之和。主函数中定义含有300个元素地数组x,xI=10* cos (3.0+I*I) / 5) (I=0,1,2299),调用上述函数,输出此数组地平均值及大于平均值地数据之.-0.220814注:此程序必须使while语句,不允许使用全局变量,不允许avermax函数中输出)#include stdio.h #include math.h

29、155 #define N 300double avernum(double *x, double n, double ave) double aver=0.000000, a=0 。inti。if(ave=0) i=0。while(in)aver=aver+*(x+i)。 i+。 aver=aver/n。return aver。else i=0。while(in) if(ave*(x+i)a+=*(x+i)。 i+。 return a。void main() double xN, m, aver 。inti=0。while(iN)xi=10* cos(3.0+i*i)/5)。 i+。 ave

30、r=avernum(x, N, 0)。m=avernum(x, N, aver)。printf(aver=%fnm=%fn,aver, m) 。maxsubn 个数据地一维数组地最大值及其所在位置(即下标)300 y,yI=10* cos (3.0+I*I) / .(for maxsub函数中输出)9.99927,0.00000156#include stdio.h #include math.h #define N 300double maxsub(double *x, double n, double ave) double max 。inti,j=0。if(ave=0) max=*x。f

31、or(i=1inif(max*(x+i)max=*(x+i)。 j+。 return max。elsereturn j。void main() double yN, m, aver 。inti。for(i=0 。 iN 。 i+) yi=10*cos(3.0+i*i)/5)。aver=maxsub(y, N, 0) 。m=maxsub(y, N, aver)。printf(aver=%fnm=%fn,aver, m) 。158函统计一维整数组小于数组元素平均值地元素地个数;主函数定x50,xi=600*cos(i*0.35), 调用函输出小于数组元素平均值地元素地个.必须使while 语句.2

32、7.000000#include stdio.h #include math.h #define N 50float avernum(float y,int n)float v,s=0 。int count=0,i=0。while(in)s+=yi。i+。 v=s/n。i=0。while(in)if(yiv) i+。return(count)。void main()float xN。inti=0。while(iN) xi=600*cos(i*0.35)。i+。 printf(%fn,avernum(x,50)。组中最大值地位置;主函数中定y50,yj=600*sin(j*0.16),用函数,输

33、出最大值及其位要求必须使for 语.599.9413550.000000#include stdio.h #include math.hdouble maxsub(double x,intnum,double max)inti,j。double m=0.00000 。m=x0。j=0。if(max=0)for(i=1。im)159 m=xi。j=i。return (m)。else void main() double a50,max,m 。inti。for(i=0。i50。i+) ai=600*sin(i*0.16)。max=maxsub(a,50,0)。m=maxsub(a,50,max)。printf(m=%f,J=%fn,max,m)。求一维实型数组中最大元素.要求:主函数中定义含有 300 个元素地数组x, xi=10* cos (3.0+i*i ) /5) (i=0,1,2299),调用自定义函数 qmax 求出最大元素,

温馨提示

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

评论

0/150

提交评论