C语言编程8

上传人:缘*** 文档编号:333289101 上传时间:2022-09-01 格式:PDF 页数:53 大小:3.91MB
返回 下载 相关 举报
C语言编程8_第1页
第1页 / 共53页
C语言编程8_第2页
第2页 / 共53页
C语言编程8_第3页
第3页 / 共53页
C语言编程8_第4页
第4页 / 共53页
C语言编程8_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《C语言编程8》由会员分享,可在线阅读,更多相关《C语言编程8(53页珍藏版)》请在金锄头文库上搜索。

1、1.输入两个正整数,m 和 n,求其最大公约数和最小公倍数。#includevoid main()int hcf(int,int);/*函数声明*/int lcd(int,int,int);/*函数声明*/int u,v,h,l;printfifTlease i n p u t two numbers:。”);scanf(”d,%d&u,&v);h=hcf(u,v);printf(MH.C.F=%dn,h);l=lcd(u,v,h);printf(HL.C.D=%dn,l);)int hcf(int u,int v)(int t,r;if(vu)t=u;u=v;v=t;while(r=u%v)

2、!=O)u=v;v=r;retum(v);int lcd(int u,int v,int h)retum(u*v/h);)2.输入一行字符,分别统计出其中字母、空格、数字和其他字符的个数。#includeint letter,digit,space,others;void main()void count(char);char text8O;printf(nPlease i n p u t string:nM);gets(text);printf(nstring:n,*);puts(text);letter=0;digit=O;space=0;others=0;count(text);prin

3、tf(,lctter:%d,digit:%d,space:%d,othcrs:%dnn,letter,digit,space,others);void count(char str)(int i;fbr(i=O;stri!=W;i-H-)if(stri=,a,&stri=,A,&stri=0,&stri=9,)digit+;else if(stri=32)space-+;elseothers-+;)3.输入一个正整数求出它是几位数;输出原数和位数。#includeint digit;void main()void count(char);char text8O;printf(MPlease i

4、 n p u t numbers:nH);gets(text);printf(nNumbers:n);puts(text);digit=O;count(text);printf(ndigit:%dn,digit);)void count(char str)int i;fbr(i=O;stri!=W;i+)if(stri=,0,&stri=,9)digit-H-;4.输入一个正整数,输出原数并逆序打印出各位数字。#includevoid invertLonglnt(long);void main()(unsigned long iNumber;printfifTlease i n p u t a

5、 numbcr:n);scanf(n%ldn,&iNumber);printf(HThe i n p u t number is:%ldnn,iNumber);printff The inverse number is:);invertLonglnt(iNumbcr);void invertLongInt(long x)if(x=0&x=9)printf(%dn,x);elseprintf(%d,x%10);invertLongInt(x/l 0);5.从键盘上输入若干学生的一门课成绩,统计并输出最高成绩和最低成绩及相应的序号,当输入负数时结束输入。6.从键盘上输入若干学生的一门课成绩,计算出

6、平均分,当输入负数时结束输入。将结果输出。7.求l!+2!+3!+.+20!,将结果输出。#includevoid main()float s=O,t=l;int n;fbr(n=l;n=20;n+)t=t*n;s=s+t;printf(l!+2!+3!+.+20!=%en,s);8.打印以下图案:*#includevoid main()int i,j;printf(HThe picture is:n);static char picture47=f 7 工,巧,f,J I,J 5 t,J j 5fbr(i=0;i=3;i-H-)for(j=0;j=6;j-H-)printf(%c,pictu

7、reij);printf(n);|)9.打印以下图案:*#includevoid main()(int ij;printf(HThe picture is:n);char picture4 4=*,I*,*,*,*fbr(i=0;i=3;i-H-)fbr(j=0;j=3;j+)printf(nnn);10.求下列试子的值:1-1/2+1/3-1/4+.+1/99-1/100,将结果输出。#includevoid main()float sum=l.O,t,s=l;int i;fbr(i=1 ;i=100;i-H-)|t=s/i;sum=sum+t;s=-s;printfCl-l/2-l-1/3

8、-1/4+.+1 /99-1 /100=%5.4fn,sum);11.打印出100999之间的所有水仙花数。#includevoid main()int i,j,k,n;printf(100999之间的所有水仙花数are:n);fbr(n=100;n 1000;n+)i=n/IOO;j=n/10-i*10;k=n%10;if(n=i*i*i+j*j*j+k*k*k)printf(M%d M,n);printf(unH);)12.求 Sn=a+aa+aaa+.+aa.a 之值,n,a 山键盘输入。#includevoid main()(int a,n,i=l,sn=0,tn=0;printf(H

9、a,n=:);scanfH%d,%du,&a,&n);while(i=n)(tn=tn+a;sn=sn+tn;a=a*l 0;+i;(printffa+aa+aaa+.+aa.a=%dn”,sn);13.打印以下图案:*#includevoid main()char a7=*,*?*;*int i,j,k;char space=,printf(MThe picture is:);for(i=0;i4;i+)printf(Hnn);printf(H”);fbr0=l;j=i;j+)printf(M%cn,space);fbr(k=0;k7;k+)printf(,f%cn,ak);)printf(

10、nnn);I14.打印以下图案:112112321123432115.打印以下图案:123432112321121116.编写一个统计学生成绩程序,完成以下功能:输入4个学生的2门课成绩;求出全班的总平均分,将结果输出。#include#define N 4struct student|char num3;char name4;float score2;float avr;stuN;void main()int ij;float sum,average;fbr(i=0;iN;i+)/*输入数据*/(printf,i n p u t scores of student%d:nH,i+l);pri

11、ntf(nname:);scanfi(n%sM,stui.name);for(j=0;jv2;j+)printf(nscore%d:Mj+l);scanf(H%f&stui.scorc(j);average=O;/*计算*/fbr(i=O;i N;i+)sum=O;for(j=0;j2;j-H-)sum+=stu i.score j;stui.avr=sum/2;average+=stu i.avr;)average/=N;printff Name score I score2 averagenH);fbr(i=0;iN;i+)(printf(H%5s%1 Os,stui.num,stui.n

12、ame);fbr(j=0;j2;j+)printf(,%9.2fstui.scoreD);printf(M%8.2fnu,stui.avr);printf(,average=%5.2fn,average);17.打印以下图案:*#includevoid main()(char a5=*,int ij,k;char space=,printf(nThe picture is:);fbr(i=O;i5;i+)printf(nnn);printf(H)for(j=I;j=i;j-b+)printf(M%cH,space);fbr(k=0;k5;k-H-)printf(c”,ak);printf(nn

13、n);18.给出年、月、日,计算该日是该年的第几天。#includevoid main()int sum_day(int,int);int leap(int year);int year,month,day,days;printf(i n p u t date(year,month,day):n);scanf(n%d,%d,%d,&year,&month,&day);printf(M%d/%d/%dn,year,month,day);days=sum_day(month,day);i 1 eap(year)&month=3)days=days+l;printffis the%dth day i

14、n this year.n,days);int sum_day(int month,int day)int day_tab 13=0,31,28,31,30,31,30,31,31,30,31,30,31;int i;fbr(i=l;imonth;i+)day+=day_tabi;retum(day);int leap(int year)(int leap;leap=year%4=0&year%100!=0|year%400=0;retum(leap);19.求一个3*3的整型矩阵对角线元素之和。将原矩阵和求出的和输出。#includevoid main()float a33,sum=0;in

15、t i,j;printf(请输入元素:n);fbr(i=0;i3;i+)fbr(j=0;j3J+)fbr(i=0;i3;i+)sum=sum+aii;printf(对角线之和是:%6.2fn,sum);for(i=0;i=3;i-H-)for0=O;j=3;j+)printf(n%5.2f,aij);printf(nnH);20.求一个4*3的矩阵各行元素的平均值;将原矩阵和求出的平均值全部输出。#includevoid main()int a43,s4,i,j,k;fbr(i=0;i4;i+)for(j=0;j3;j-H-)scanf(,%dH,*(a+i)+j);fbr(i=0;i 4;i

16、+)(k=0;for(j=0;jv3;j+)k+=aij;printf(第d 行的平均值是%d”,i+l,k);printf*);21.求一个3*4的矩阵各列元素的平均值;将原矩阵和求出的平均值全部输出。#includevoid main()inta43,s4,i,j,k;fbr(i=0;i4;i+)for(j=0;j3;j+)scanf(,%dH,*(a+i)+j);fbr(i=0;i 4;i+)k=0;for(j=0;j3;j+)k+=aij;printf(第d 行的平均值是%d”,i+l,k);printf(Hnn);22,求一个3*5的矩阵各列元素的最大值,将原矩阵和求出的最大值全部输出。#includevoid main()|int a35,s3,i,j,k;fbr(i=O;i3;i+)for(j=Oj5;j+)scanff%d”,*(a+i)+j);fbr(i=O;i3;i+)*(s+i)=*(*(a+j);fbr(j=l;j5;j+)if(*(s+i)*(*(a+i)+j)*(s+i)=*(*(a+i)+j);fbr(i=0;i3;i+)(printf(nLine=%d

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 营销创新

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号