C语言编程 (2).doc
《C语言编程 (2).doc》由会员分享,可在线阅读,更多相关《C语言编程 (2).doc(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、二、编程题1.有一函数:当x0时,y=1。编一程序,输入x的值,输出y的值。#includevoid main() int x,y; printf(请输入x:); scanf(%d,&x); if(x0) y=-1; else if(x=0) y=0; else y=1; printf(y=%d,y);2.输入三个实数,将这三个数按由大到小的顺序排列,并输出这三个数。#includevoid main()int a,b,c,temp=0;printf(please input a,b,c: );scanf(%d %d %d,&a,&b,&c);if(ab) temp=a;a=b;b=temp;
2、if(ac)temp=a;a=c;c=temp;if(bb&ac) max=a; if(ba&bc) max=b; if(ca&cb) max=c; printf(最大值是: %dn,max);4.编程求圆面积、圆周长。要求圆半径由键盘输入,输出时要求有文字说明,取小数点后两位数字。#include #define pi 3.1416 main() float r,l,s; printf(请输入半径:n); scanf(%f,&r); l=2*pi*r; s=pi*r*r; printf(l=%7.2fns=%7.2fn,l,s); 5. 【有点难】 有分段函数:当x10时,y=sqrt(x)
3、。编一程序,输入x的值,输出y的值。6.编写程序,判断某一年是否是闰年。(闰年的条件是:能被4整除,但是不能被100整除,或者可以被400整除。)#include int main() int year,leap; scanf(%d,&year); if (year%4=0) if(year%100=0) if(year%400=0) leap=1; else leap=0; else leap=1; else leap=0; if (leap) printf(%d is ,year); else printf(%d is not ,year); printf(a leap year.n);
4、return 0;7.输入一个华氏温度,要求输出摄氏温度,输出时要求有文字说明,取小数点后两位数字。公式为c=5/9(f-32)#includeint main() float f,c; printf(输入华氏温度:n); scanf(%f,&f); c=(f-32)/1.8; printf(对应的摄氏温度是:%5.2fn,c);8.有一函数:当x1时,y=|x|;当1=x=10时,y=3x+11。编一程序,输入x的值,输出y的值。9.输入三个实数,将这三个数按由小到大的顺序排列,并输出这三个数。#includevoid main()int a,b,c,temp=0;printf(please
5、 input a,b,c: );scanf(%d %d %d,&a,&b,&c);if(ab) temp=a;a=b;b=temp;if(ac)temp=a;a=c;c=temp;if(bc)temp=b;b=c;c=temp;printf(从小到大为:%d,%d,%dn,a,b,c);10.输入一个字符,判断它是否是小写字母,如果是,将它转换成大写字母;如果不是,不转换。然后输出最后得到的字符。#include#includevoid main() char a; scanf(%c,&a);if(islower(a)a=a-32;printf(%cn,a); 11.编程求圆柱体积,圆柱表面积
6、。要求圆半径,圆柱高由键盘输入,输出时要求有文字说明,取小数点后两位数字。#include int main(int argc, char *argv) float r,h,l,s,sq,vq,vz; float pi=3.1415926; printf(请输入圆的半径r,圆柱高h:); scanf(%f,%f,&r,&h); l=2*pi*r; s=pi*r*r; sq=4*pi*r*r; vq=4.0/3.0*pi*r*r; vz=pi*r*r*h; printf(圆周长为:l=%6.2fn,l); printf(圆面积为:s=%6.2fn,s); printf(圆球表面积为:sq=%6.
7、2fn,sq); printf(圆球体积为:vq=%6.2fn,vq); printf(圆柱体积为:vz=%6.2fn,vz); system(PAUSE); return 0;12.有分段函数:当x5时,y=2x-10.编一程序,输入x的值,输出y的值。13.有三个整数a,b,c,由键盘输入,输出其中最小者。#include int main() int a,b,c,temp,min; printf(请输入三个整数:); scanf(%d,%d,%d,&a,&b,&c); temp=(ab)? a:b; min=(tempc)? temp:c; printf(三个数中最小数是%dn,min)
8、; return 0;14.输入一个字符,判断它是否是大写字母,如果是,将它转换成小写字母;如果不是,不转换。然后输出最后得到的字符。#include void main()char c;printf(input ch:);c=getchar();if( c=A&c=Z)c=c+32;printf(%c,c);else printf(%c,c);15.输入三角形的三边长,求三角形面积。求三角形面积的公式为area=sqrt(s(s-a)(s-b)(s-c),其中s=(a+b+c)/2#include#includevoid main() float a,b,c,s,area; printf(依
9、次输入a,b,c:); scanf(%f%f%f,&a,&b,&c); s=(float)0.5*(a+b+c); area = (float)sqrt(s*(s-a)*(s-b)*(s-c); printf(面积为:%7.2f,area);16.编程求2!+4!+6!+8!+10!的值,并输出结果。#includeint main() int n=1,sum=0,j,m=1,i; for(i=1;i=5;i+) m=1; for(j=1;j=2*i;j+) m=m*j; sum=sum+m;printf(sum=%dn,sum);return 0;17.猴子吃桃问题。猴子第一天摘下若干个桃子
10、,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想吃时就剩一个桃子了。求第一天共摘了多少个桃子。#includevoid main()int day; static x1=1; day=10; while(day0) x1=(x1+1)*2; day-; printf(桃子总数=%dn,x1);18.输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。#includeint main()int i,j,k,n;printf(水仙花数是);for(n=100;n1000
11、;n+)i=n/100;j=n/10-i*10; k=n%10; if(n=i*i*i+j*j*j+k*k*k)printf(%d ,n);printf(n);return 0;19.编程求1100之间的所有素数,并输出结果。#include int main(void) int a100,i,j; for (i = 0; i100; i+) ai=i+1; for (i=1; i100; i+) for (j=i+1; j100; j+) if (ai&aj%ai=0) aj=0; for (i = 1; i100; i+) if (ai) printf(%dt,ai); return 0;
12、20.编程求1!+3!+5!+7!+9!的值,并输出结果。#includeint main() int n=1,sum=0,j,m=1,i; for(i=1;i=5;i+) m=1; for(j=1;j=2*i-1;j+) m=m*j;sum=sum+m;printf(sum=%dn,sum);return 0;21.用pi/41-1/3+1/5-1/7+.公式求pi的近似值的绝,直到某一项对值小于10的-6次方为止。#include#includeint main()int sign=1;double pi=0.0,n=1.0,term=1.0;while(fabs(term)=1e-6)p
13、i=pi+term;n=n+2;sign=-sign;term=sign/n;pi=pi*4;printf(pi=%10.8fn,pi);return 0;22.一个球从100m高度自由落下,每次落地后又反跳回原高度的一半,再落下,再反弹。求它在第10次落地时共经过多少米?#include stdio.h #include stdio.h main() float sn=100.0,hn=sn/2; int n; for(n=2;n=10;n+) sn=sn+2*hn;/*第n次落地时共经过的米数*/ hn=hn/2; /*第n次反跳高度*/ printf(the total of road
14、is %fn,sn); getch(); 23.输入两个正整数m和n,求其最大公约数和最小公倍数。#include int main() int p,r,n,m,temp; printf(请输入两个正整数n,m:); scanf(%d%d,&n,&m); if (nm) temp=n; n=m; m=temp; p=n*m; while(m!=0) r=n%m; n=m; m=r; printf(它们的最大公约数为:%dn,n); printf(它们的最小公约数为:%dn,p/n); return 0; 24.利用循环,编程求1!+2!+3!+10!的值,并输出结果。main() int i,
15、j,n,sum=0; for(i=1;i=10;i+) n=1; for(j=1;j=i;j+) n*=j; sum+=n; printf(%dn,sum); 25.有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13.,求出这个数列前20项之和。#includemain() int i,x,y,a; float sum=0; x=2; y=1; for(i=1;i20;i+) sum+=(float)(x)/y; / printf(%d/%dn,x,y); a=x; x=x+y; y=a; printf(%7.5fn,sum); 26.求Fibonacci数列前40个数。这个数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言编程 2 语言 编程
限制150内