版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);if(a+bc&3+cb&b+ca) printf (narea=%fn,area); else 1 printf(no);5. (*)编程求出1 !+2!+3!+8!+9!+10!的值并输出。 程序 1: main() int i,j;double p=l, sum-0;for (i=l;i=10;i+) for(j=l;j=i;j+) p=p*i: sum二sum+p;p=; printf (sunif” t sum);程序 2: float fac (n)int n;1(float f;if (n0) p
2、rintf(Rn0,error!H); else if(n=0 :n=l) f=l; else f=fac(n-l)*n; return(f);main()int h.s二0,n; for(n=l;n=4;n+) h=fac(n):s=s+h;printf(Ms=l!+2!+. +10!=%dnl s);程序 3: main() int i;double p=l, sum二0; for(i=l;i=10;i+) p=p*i;sum二sum+p; printf(Msum=%fn,sum); 2 6. (*)从键盘输入两个整数,输出其和,差,积,商。7. (*) 入若干个自然数,对奇数从大到小排序
3、,对偶数从小到大排序,输出两种结果。maxji (int a, int n) int itj,ktt;for(i=0;in-l; i+)k=i;for(j=i+l;jn;j+)if(akaj) k=j;if (k!=i)t=ak;ak =aj ;a j=t;Irdefine N 10main()int cNti,j;for (i=0;i=0;i)if(ci%2=0)printf(%5dn,ci);printf (n);for (i=0;iN;i+)if(ci%2!=0)printf (%5dn,ci);8. (*)求出0999之间的所有水仙花数”并输出。水仙花数”是指一个三位数,其 各位数字的
4、立方和确好等于该数本身,如;153=1+5 + 3 ,则153是一个“水仙花数”。程序 1: main()int i,j,kfa;for (i=l;i=9;i+)for (j=0;j=9;j+)for(k=0;k=9;k+)if(i*i*i+j*j*j+k*k*k=100*i+10*j+k)printf (n%d%d%dn,r. i, j, k);程序:main()int m,i,j,k,a;for(m=10L;i=999;m+)i=m/100;j=(m-m*l00)/10; 3 k=m%10;if(i * ii +jj*j+k*k*k=m) printf(H%dn,m);9. (*)试编程:
5、判断输入的正整数是否既是5,又是7的整数倍数。若是则输出yes;否 则输出no10. (*)已有函数调用语句c=add(a,b);请编写aad函数,计算两个实数a和b的和,并 返回和值。11. (*)有人想将手中一张面值100元的人民币换成5元、1元、元面值的零钱100张, 以上三种面值的零钱至少有一张,问共有几种换法。请编程实现。程序 1: mainO(int i,j,k,n=O;for(i=l;i19;i+)for(j=l;j95;j+)for(k=l;k94:k+)i f(5*i+j+*k=100&i+j+k=100)printf(%dt%dt%dnH.i.j,k);n+; printf
6、 (rT%dn);12. (*)求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字,例如: 2+22+222+2222+22222程序 1: main()int i, a.n;long sum二0, b=l.c=l; scanf (%d,%dr t&a,&n); for(i=l;i=n;i+) sum=a*c;b*=10;c+=b;printf(”Id”,sum);程序 2: main() long int sn=0,k=0;int a,i,j;scanf(%dn t&a);for(i=l; i=5; i卄)2for(j=l;j=i;j+)k-10*k+a; 4 sn
7、二sn+k; k二0;printf(%ldnH,sn);程序 3: main()long int sn二0.k=a;int a,itj;scanf (%d&a);for(i=l;i=5;i+) k=10*k+a;sn二sn+k;printf (哪dn sn);13. (水)编程输出如下图形(不能仅用printf语句人*main()(int itk,j;for(i=0;i=4;i+)for(j=0; j4-i; j+)printf ():for(k二0;k=2*i;k+)printf(*);printf(n):14. (*)用近似公式求自然对数的底e的值。11 2!3!eal+l!+ +#inc
8、ludeHmain()float i tj,e,p=tsum=;for(i=l;i10 ;i+)for(j=l;j=i;j+)p=p*j:sum二sum+p;p=;e=i+sum;printf(n%fnu,e);15. (*)请编程,用scanf ()函数输入三个字符,对这三个字符各加一个整数1后,用 putcharO函数输出,且每输出一个字符换一行。16. (*)请编程,用scanf ()函数输入三个整数,输出其中不大不小的那个数,输出宽度 为五位。int findmid(int i, int j, int k)int n;if(ij) tn=i;i=j;j=n;if(ik) n=j;els
9、e n=k;ieturn(n) ;main()(int i.j,k,n;scanf(%d%d%d &i,&j.&k);n=findmid(ij,k);printf(R%dnntn);17. (*)编程实现输出所有1100之间能被9整除余2的数。18. (*)编写一程序实现如下功能:输入1、2, 3, 4、5、6、7 (分别对应星期一至星期0)中的任何一个数,便能输出与之对应的英文名称。如输入1,则输出Mondayomain()char day;scsnf&day);swith(day)case * 1 *: printf mondayn,r): break;case *2*:printf (t
10、uesdayXn1) ; break;case 3:printf (wednsdayXnr) ; break;case *4*:printf (thursdayVn1) ; braek;case *5*:printffridaynn): break;case 6 :printf (rfsaturdaynn) ; break;case 7:printf(nsundaynu) ; break;defult: printf (errorXn1*);19. (*)编一程序,对于给定的一个百分制成绩,输出相应的5分制成绩。设:90分以上 为 爼,80、89 分为7079 分为60、69 分为60 分以下
11、为E。(用 switch 语句实现)。main()int s,score;seanf (%d. &score);s=score/10;switch(s)case 10:printf(nArT);break;case 9: printf (n.nH): break:case 8:printf(nBn):break:case 7:printf(Cn);break;case 6: printf (,rDn); break;case 5:case 4:case 3:case 2:case 1: printf (,rEnw): break:default:printf(nerrorn);(20. (*)
12、试编程:判断输入的正整数是否既是5,又是7的整数倍数。若是则输出yes; 否则输出no21. (*) 一个数如果却好等于它的因子之和,这个数就称为“完数”。例如,6的因子为1、2、3,而6= 1+2+3,因此6是完数”。编程序找出100之内的所有完数,并按下列格式输 出其因子:6 its factors are 1,2,3main()int m.i.s;for(m=2;m1000;m+)(s=0;for(i=l; im ;i+)if(m%i=0) s=s+i;)if (m=s) printf(M%3d its factors are m);for (i=l;im;i+)if(m%i=0) pr
13、intf(w%4dt i);printf(nn);22. (*)输入5对整数,请输出每对数中较大者main()int i,j,a52;for(i=0;i=4;i+)for(j=0;j=l;j+)scanf(n%d,&aij);for(i=0;iai 0)printf (H%4dnu,ai 1);else printf (H%4dnu,ai 0); 6 23. (*)编程将一个3x3矩阵转置(行列互换)后输出。main()Iint i,j, a33,b331;for(i=0;i=2;i+)for(j=0;j=2;j+)scanf (rf%dn,&ai j);for(i=0;i=2;i+) for
14、(j=0;j=2;j+) print(“%5d”,aij);printf(n);for(j=0;j=2;j+) for(i=0;i=2;i+) printf (w%5d,bi j); printf ( n );24. (林)求一个一维数组的最大值,最小值和平均值(主函数调用并输出)。程序1:float max(int n,float a) int i;float max;max=a0:for(i=0;in;i+)if(maxai) max=ai;return(max);程序2:main()void make();int a10 , i:extern int max,min;extern flo
15、at aver;for (i=0;i10;i+)scanf(n%dR,&aiJ);make (a,10);printf(max-%d.min=%d,aver=% 2fmax,min,aver)float min(int n,float a) int i;float min;min=a0:for (i=0;iail) min=ai:return(min);float aver(int n,float a) int i;float sumO,aver; 7 for(i=0;in;i+)sum=sum+ai:aver=sum/n;return (aver);trinclude1 ”main() in
16、t i;float mtnta5,c;for(i=0;i5;i+)scanf(H%f;m二max (5 4);n=min(5,a);c=aver(5,a);printf(n%5f%5f%5fn*,m,n,c):25. (*)编写函数,求一个不超过五位的十进制整数各位数值的和。(如:输入2634,输 出15)Jtinclude*main() int ita5fmtn=0; scanf (%drf ,&m); for(i=0:i=4;i+)ai=ni%10;n=n+ai:m-m-aiJ*10;printf (rr%5dn,ai) ;printf (* nr);printf (rr%dn ,n);2
17、6. (*)编程求出一个3x3矩阵的最大和最小元素及其下标。main()int i,jtmax,minta33fml,nl,m2tn2;for(i=0;i=2;i+)for(j=0; j=2; j 卄)scanf (%d.&ai j);min=max=a00; 8 for(i=0;i=2;i+)for(j=0;jmax) (max=aij;ml=I;nl=j; else if (ai jmin)min=ai j ; m2=i ; n2=j;printf (nmax=%d.%3d,%3d,min=%d,%3d,%3d,rtmax,ml,nl,min,m2,n2);27. (*)有一个字符串,包含
18、n个字符,编写一个函数,将此字符串中从第m个字符开 始的全部字符复制成另一个字符串。main()char chs230=0),chsl30=this is my first C program;int i.j.m;scanf(H%d.&m);for(i=mtj=0;i30;i+. j+) chs2j=chsl 订;chs229=,0,;pr i nt f (%s11, chs2);2& (*)求一个3x3矩阵的对角线元素之和。main() int i,jtsuml=Otsum2=0ta33:for(i=0;i=2;i+)for(j=0;j=2;j+)scanf (*%d,Tt&ai j);fo
19、r(i=0;i=2;i+)(for(j=0;j=2;j+)if(i=j) suml+=ai j;if(i+j)=2) sum2+=ai j;printf (M%5d%5d ” t sum 1, sum2) ; 29. (*)从键盘输入两个整数,输出其最大公约数和最小公倍数。 程序1:main ()int a,b,t,p,r;scanf&b);if(ab) t=a;a=b;b=t;p=a*b;while(b!=0)r=a%b;a=b;b=r;printf( “%5d%5dp/a); 9 main() int a,b,m,n,i. t;scanf( a%d%dv ,&s.&b);if(ab) t=
20、a;a=b;b=t;m=a;n=b;for (i=l;ib) n=i;break;sfor(i=(N-2);i=n;i)ai+l=ai;an=b;for(i=0;iN;i+)printf(M%5dw,ai);31. (林)请编写程序,输出以下扬辉三角形(要求输出10行)。11 11 2 113 3 11 4 6 4 1# define M 10# define N 10main()int aMN,i,j;for(i=0;iM;i+)for(j=0;j=i;j+)if(j=O) j=i)aij=l;elseai j=ai-l j-l+ai-l j:for(i=0;iM;i+)for(j=0;j=
21、i;j+)printf (%4d ,ai j);printf (HnH) ;32. (*)从键盘输入少于50个的整数,其值在0和4之间(包括0和4),用-1作为输入 结束标志,统计每个整数的个数。请编程实现。33. (林)从键盘输入两个字符串a和b,要求不用库函数strcat把串b的前五个字符连接到串a中;如果b的长度小于5,则把b的所有元素都连接到a中,请编程实现。main() char a50.b10,*pl,*p2;int i J;scanf( a%s%sv tatb);n=strlen(a);for(pl=a+n,p2=b;pl=a+(n+4);p1+.p2+)*pl=*p2;?if(
22、*p2= =, 0 ) break;*pl=, 0 :printf( %s ,a);34. (林)编写函数,在一个一维数组中查找指定值,若找到则返回该数值的下标,否则返 回-1。要求用指针变量传递数组首地址。main()float a10 = lt2t3,4,5,6,7,8.9J0);float b;?int i;scanf(M%f,&b);for (i=0;i=10) printf (,f-l ”);printf (n);35(林)写一程序,要求用户在键盘上输入一个整数,并把每位数字转换为英文。例如:输入 1024 时,输出 One Zero Two Four main() long int
23、 n;int m,i=0tc10;scanf (rr%ldMt&n);dom=n%10;i+;ci=m;printf (rf%5d%5d%5dnH t im.ci); while (n/=10)0):while(i=l)switch(ci+l)case 0: printf(zero) ;printf(” n):break;case 1: printf (roneH):printf) ; break; case 2: printf (,rtwo):printf(11 ) ; break;case 3: printf (,rthreew):printf (” H): break;case 4: p
24、rintf (,rfourH): printf (” n): break;case 5: printf (,rfivew): printf (” n): break;case 6: printf (Hsixw): printfC1 ”); break;case 7: printf (rseve n);printf(” ”); break;case 8: printf(eight);printf(” ”); break;case 9: printf (nnine): printf (11 ”); break; default: printf (no*) ;36. (*) A数组中有8个元素,从第
25、6个元素开始将数组后三个元素移到数组开头。例如: A数组元素为:26985374移动后数组变为:37426985Jtdefine N 8mainOint a8 = 2t6t9,&5.3.7,4;int i, j,t;for(i=0;i8;i+)printf(%5dntai);printf Cn); for(j=0;j=0;i-) ai+l=ai:a0=t;for(i=0;i8;i+) printf CSd.aEi);37. (*)按如下格式打印输出乘法口诀表:1X1=11X2=2 2X2=4aIa1X9=9 2X9=18 3X9=27 9X9=8138. (*)请将n个整数按升序重新放在原数组
26、中,操作时不得另开辟数组。39. (*)输入若干学生一门功课的成绩,统计各分数段的人数。凡不及格(60分以下) 都由一个计数器来统计,其它以10分作为一个数段,100分作为一个分数段。main()?int a10:int i,j,t,p;for (i=0;i10;i+)scanf(M%d,&aEil);for(i=0;i9;i+)(p=i;for(j=i+l;jaj)p=j;if(p!=j)t=ai: ai=ap ;ap=t;for(i=0;i10;i+)printf (*%5d,ail);40. (杯)编写函数,绐定一个数,删除数组中与之相等的元素,返回值为删除后数组中的元素个数。main
27、()float a10,t; int s,b6 = 0, i; for (i=0;i10;i+)scanf(H%f; i=0;while(i10) s=(int)ai/10;i+;switch(s)case 10:b0+; break; case 9:bl+; break; case 8:b2+; break; case 7:b3+; break; case 6:b4+;break;case 5:case 4:case 3:case 2:case 1:case 0: b5+; break; for(i=0;i=5;i+) printf (rf%2d,,bi); 41. (*)输入一个整数,判断
28、它能否被3、5、7整除,并输出以下信息之一:(1)能同时被3、5、7整除;(2)能被其中两个数(说明哪两个数)整除;只能被其中一个整除(说明哪个数);)(4)不能被3、5, 7任何一个整除。42(*)有10个数已按由小到大的顺序存放在一个整型数组中,从键盘输入一个数,找出该数是数组中的第几个元数,如果该数不在数组中,则打印出“无此数S main() int a10 = 2,46& 102,14.16,1&20;intfor(i=0;i10;i 卄)printf (光5d” ,ai):printf ( n”);scanf (“d v&m):for(i=0;i=10) printf ( ano ); 43. (*)给出年、月、日,计算出该日是该年的第几天。44. (*)求3至
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 石膏装卸制度规范
- 门卫检查规范制度
- 劳务派遣知识试题及答案
- 学校传染病疫情及突发公共卫生事件报告制度(模板)
- 突发公共卫生事件管理制度
- 智慧城市建设综合方案
- 2025年村医全科考试试题及答案
- 城市基础设施提升改造方案
- 2026年机器人集成公司竞业限制协议管理制度
- 资料收集与分析
- 教师三笔字培训课件
- 数学课如何提高课堂教学容量
- 监理规划毕业设计(论文)
- GB/T 38697-2020块菌(松露)鲜品质量等级规格
- 三菱FX3U系列PLC编程技术与应用-第二章课件
- 京港澳高速公路段改扩建工程施工保通方案(总方案)
- 医用设备EMC培训资料课件
- RoHS培训资料课件
- 2020年广东学位英语考试真题及答案
- 锅炉防磨防爆工作专项检查方案
- 《仪表本安防爆技术》课件
评论
0/150
提交评论