资源描述:
《C语言补充材料3》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、08物理C语言补充材料3几种重要的算法与编程1.通过键盘输入一串字符,统计数字、大写字母、小写字母、空格及其他字符出现的次数,当输入回车键时结束。#includevoidmain(){charc;intn1,n2,n3,n4;n1=n2=n3=n4=0;while((c=getchar())!=’’){if(c>=’0’&&c<=’9’)n1++;elseif(c>=’A’&&c<=’Z’)n2++;elseif(c>=’a’&&c<=’z’)n3++;elseif(c==’‘)n4++;elsen5++;}printf(“num=%d,u
2、p-case=%d,lo-case=%d,space=%d,others=%d”,n1,n2,n3,n4,n5);}2.编写一个加法器程序,即从键盘输入N个数,求它们的和与平均值。#includevoidmain(){intcount,n,x;floattotal=0,average;printf(“entern:”);scanf(“%d”,&n);printf(“n=%d”,n);for(count=1;count<=n;count++){printf(“enterx%d:”count);scanf(“%d”,&x);total=to
3、tal+x;}average=total/n;printf(“total=%6.1f,average=%6.1f”,total,average);}3.计算1!+2!+3!+……+n!#includevoidmain(){intx,n,t,s;printf(“intern:”);sacnf(“%d”,&n);t=1;s=0;for(x=1;x<=n;x++){t=t*x;s=s+t;}printf(“%d”,s);}4.求两个数的最大公约数和最小公倍数解题方法:·最大公约数用大整数除小数,得到余数再用小整数除余数1,得到余数2;再用余数
4、1整除余数2,……直到余数为0·最小公倍数两数相乘再除以最大公约数。main(){inta,b,c,n1,n2;printf(“inputtwonumber:”);scanf(“%d,%d”,&n1,&n2);if(n1voidmain(){unsignedintnumber;prin
5、tf(“inputthenumber:”);scanf(“%d”.&number);do{printf(“%d”,number%10);number/=10;}while(number!=0);printf(“”);}6.给出一个0~99999的正整数,求:(1)它是几位数;(2)分别输出每一位数字;(3)按逆序输出原数字。#includevoidmain(){longnum;intn1,n2,n3,n4,n5;n5=num/10000;n4=num/1000%10;n3=num/100%10;08物理C语言补充材料3n2=num/10%1
6、0;n1=num%10;if(n5!=0){printf(“place=5”);printf(“%d,%d,%d,%d,%d”,n5,n4,n3,n2,n1);printf(“%d,%d,%d,%d,%d”,n1,n2,n3,n4,n5);}elseif(n4!=0){printf(“place=4”);printf(“%d,%d,%d,%d”,n4,n3,n2,n1);printf(“%d,%d,%d,%d”,n1,n2,n3,n4,);}elseif(n3!=0){printf(“place=3”);printf(“%d,%d,%
7、d”,n3,n2,n1);printf(“%d,%d,%d”,n1,n2,n3);}elseif(n2!=0){printf(“place=2”);printf(“%d,%d”,n2,n1);printf(“%d,%d”,n1,n2);}else{printf(“place=1”);printf(“%d”,n1);printf(“%d”,n1);}}printf(“%d”,x[7]);}7.由键盘输入10个数,编写程序使其按由小到大排序输出。解法一:(选择法)#includevoidmain(){inta,b,c
8、,t,x[10];for