C语言113题

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

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

1、1.输入两个正整数,m和n,求其最大公约数和最小公倍数。#in cl u dev oid m ain O(in t hcf(in t,in t);/*函数声明*/in t l cd(in t,in t,in t);/*函数声明*/in t u,v,h,1:prin l f(P l eas e i np ut t w o n u m bers:n*);s can t(飞d,%cK,&u,&v);h=hcf(u,v);prin t f(*H.C.F=%d n”,h):l=l cd(u,v,h);prin t f(*L.C.D=$d n”,1):Iin t hcf(in t u,in t v)in

2、t t,r;if(v u)t=u;u=v;v=t;w hil e(r=u%v)!=0)u=v;v=r;ret u rn(v);|in t l cd(in t u,in t v,in t h)(ret u rn(u*v/h);)2.输入一行字符,分别统计出其中字母、空格、数字和其他字符的个数。#in cl u dein t l et t er,digit,s pace,ot hers:v oid m ain O|v oid cou n t(chart);char t ex t 80;prin t f(P l eas e i np ut s t rin g:n*);get s (t ex t);p

3、rin t f(*s t rin g:n*);pu t s (t ex t);l et t er=0;digit=O;s pace=0;ot hers=0;cou n t (t ex t);prin t f(*l et l er:%d,digi t:%d,s pace:%d,ot hers:%d n*l et t er,digit,s pace,ot hers);)v oid cou n t(char s t r)|in t i;for(i=0:s t r i!=0*;i+)if(s t r i=,a*&s t r i=,A*&s t r i=,0*&s t r i=,9)digit+;el

4、s e if(s t r i=32)s pace+:el s eot hers+;)3.输入一个正整数求出它是几位数:输出原数和位数。t?in cl u dein t digit;v oid m ain()(v oid cou n t(char);char t ex t 80;prin If(P l eas e i np ut n u m bers:n*);get s (t ex t);prin t f(N u m bers:n*);pu t s (t ex t);digit=0;cou n t (t ex t);prin t f(*digit:%d n*,digit);)v oid cou

5、n t(char s t r)(in t i;for(i=0;s t r i!=0;i+)if(s t r i=0,&s l r i=9)digit+;4.输入一个正整数,输出原数并逆序打印出各位数字。#in cl u dev oid in v ert Lon gl n t(l on g);v oid m ain O(u n s ign ed l on g iN u m ber:prin t f(*P l eas e i np ut a n u m ber:X n*);sc a nf&i Numb e r);printf(*The i n p u t number is:ldn”,iNumbe

6、r);printf(*The inverse number is:);invertLonglnt(iNumber):)void invertLonglnt(long x)(if(x=0&x=9)printf(*%dn*x);else|printf(*%!*,x%10);invertLonglnt(x/10);)I5.从键盘上输入若干学生的一门课成绩,统计并输出最高成绩和最低成绩及相应的序号,当输入负数时结束输入。6.从键盘上输入若干学生的门课成绩,计算出平均分,当输入负数时结束输入。将结果输出。7.求1!+2!+3!+20!,将结果输出。#includevoid main()(float s=

7、0,t=l;int n;for(n=l;n=20;n+)(t=t*n:s=s+t;)printfCl!+2!+3!+20!=%en s);)8.打印以下图案:*#includevoid main()int i,j;printf(*The picture is:n);static char picture47=for(i=0;i=3;i+)for(j=0;j=6;j+)p r i n t f p i c t u r e i j );prin t f(*n*);)第二种方法是:#in cl u dev oid m ain ()in t i,j,k;for(i=0;i5;i+)for(j=0;j 4

8、-i;j+)prin t f(*);for(k=0;k=i;k+)prin t f(*);prin t f(n);)9.打印以下图案:*#in cl u dev oid m ain O(in t i,j;prin t f(T he pict u re is:n );char pict u re 4 4=*,,*,/*,,,for(i=0;i=3:i+)(for(j=0;j=3;j+)prin t f pict u re i j);prin t fC*n*);)10 .求下列试子的值:1T/2+1/37/4+1/99-1/10 0,将结果输出。#in cl u dev oid m ain O(f

9、l oat s u m=l.0,t,s=l;in t i;for(i=l;i=10 0;i+)t=s/i:s u m=s u m+t;s=-s;)printf(*l-l/2+l/3-l/4+l/99-l/100=%5.4fn,sum);I11.打印出100999之间的所有水仙花数。8includevoid mainO|int i,j,k,n;printf(100999之间的所有水仙花数are:n*);for(n=100;nl000;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 C n*);1

10、2.求 Sn=a+aa+aaa+e,+aa-a 之值,n,a 由键盘输入。#includevoid mainO(int a,n,i=l,sn=0,tn=0;printf(a,n=:);scanf(%d,舟 d”,&a,&n);while(i=n)ln=tn+a;sn=sn+tn;a=a*10;+i;)printf(a+aa+aaa+aaa=%dn”,sn);I13.打印以下图案:*#includevoid mainOchar a 7=in t i,j,k;char s pace-;prin t f(*T he pict u re is:);for(i=0;i4;i+)(prin t f(n);

11、prin t f(z,);for(j=l;j=i;j+)prin l f(飞c”,s pace);for(k=O;k 7;k+)p r i n t f a k );)prin t f(n);14.打印以下图案:112112321123432115.打印以下图案:123432112321121116.编写一个统计学生成绩程序,完成以下功能:输入4 个学生的2 门课成绩;求出全班的总平均分,将结果输出。#in cl u de defin e N 4s t ru ct s t u den tchar n u m 3;char n am e 4;fl oat s core 2;fl oat av r;

12、)s t u N;v oid m ain O(in t i,j;fl oat s u m,av erage;for(i=0;iN;i+)/*输入数据*/prin t f(*i np ut s cores of s t u den t%d:n*,i+1);prin t f(n am e:);scanf(%s”,stui.name);for(j=0;j2;j+)(printfC*scores c a n f&s tu i.scoretj);)Iaverage=0;/*计算*/for(i=0;iN;i+)sum=0;for(j=0;j2;j+)sum+=stui.scorej:stui.avr=su

13、m/2;average+=stui.avr;)average/=N;printf(*Name sCorel score2 averagen);for(i=0;iN;i+)(printf(“为5s%I0s”,stui.num,stui.name);for(j=0;j2;j+)printf(*%9.2f”,stui.scorej);printf(*%8.2fn*stui.avr);)printf(average=%5.2fn*,average);)1 7.打印以下图案:*#includevoid main()char a5=int i,j,k;char space=,;printf(*The pi

14、cture is:);for(i=0;i5;i+)printf(n);p r i n t f();for(j=l;j=i;j+)prin t f s pace);for(k=0;k 5;k+)prin t f a k);)prin t f C n*);)18.给出年、月、日,计算该日是该年的第几天。#in cl u dev oid m ain()(in t s u m day(in t,in t);in t l eap(in t year);in t year,m on t h,day,days;prin t f(*i np ut dat e(year,m on t h,day):*):s c

15、an f(飞d,%d,&year,&m on t h,&day);prin t f(*%d/%d/%d*,year,m on t h,day);days=s u m day(m on t h,day);if(l eap(year)&m on t h=3)days=days+l:prin t f(*is t he%dt h day in t his year.n*,days);)in t s u m _day(in t m on t h,in t day)(in t day_t ab 13=0,31,28,31,30,31,30,31,31,30,31,30,31;in t i;for(i=l;

16、im on t h;i+)day+=day l ab i;ret u in (day);1in t l eap(in t year)(in t l eap;l eap=year%4=-0&year%l 0 0!=0 year%40 0=0;ret u rn(l eap);I19.求一个3*3的整型矩阵对角线元素之和。将原矩阵和求出的和输出。#in cl u dev oid m ain Ofl oat a 3 3,s u m=0;in t i,j:prin t f(请输入元素八n);for(i=0;i3;i+)for(j=0:j 3;j+)s can f&a i j);for(i=0:i3;i+)s u m=s u m+a i i;prin t f(对角线之和是:%6.2f n”,s u m);for(i=0;i=3;i+)(for(j=0;j=3:j+)prin t f(*%5.2f*a i j);prin t f(n):I20 .求一个4*3的矩阵各行元素的平均值:将原矩阵和求出的平均值全部输出。#in cl u dev oid m ain Oin t a 4 3,s 4,i,j,k

展开阅读全文
相关资源
相关搜索

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

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