




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1输入x求y 2abc从大到小排序 3输出四个数中的最大最小值 4输出成绩等级 5输入x输出xy 6输出300-400间的全部素数 7求Fibonacci数列的前二十个数 8求和n!+3 9求分数数列前20项的和 10水仙花数 11小于六位,逆序输出 12求5+.+55555的和 1. 有一个函数 ,写一段程序,输入x的值,输出 y的值。#include void main() int x,y; printf(输入x:); scanf(%d,&x); if(x100) y=-1; printf(x=%3d, y=%dn ,x,y); else if(x=0) y=0; printf(x=%d, y=%dn,x,y);else y=1; printf(x=%d, y=%dn,x,y);2. 输入3个数a,b,c,按大由到小的顺序输出。 #include void main ( ) float a,b,c,t;printf(please enter a,b,c:); scanf(%f,%f,%f,&a,&b,&c); if(ab) t=a;a=b;b=t; if(ac) t=a;a=c;c=t; if(bc) t=b;b=c;c=t; printf(%7.2f%7.2f%7.2fn,a,b,c); 3. 输入4个数,输出4个数中的最大值、最小值。#include void main() float t,a,b,c,d,max,min; printf(请输入四个数:); scanf(%f,%f,%f,%f,&a,&b,&c,&d); if (ab) t=a;a=b;b=t; if (ac) t=a;a=c;c=t; if (ad) t=a;a=d;d=t; if (bc) t=b;b=c;c=t; if (bd) t=b;b=d;d=t; if (cd) t=c;c=d;d=t; printf(最大值和最小值分别为: n); printf(max=%5.2f min=%5.2f,a,d); 4. 输入成绩,要求输出成绩等级A、B、C、D、E或error。90分以上为A,8089分为B,7079分为C,6069分为D,060分为E。若输入成绩低于0分和高于100分则输出error。#include void main() float score; char grade; printf(请输入学生成绩:); scanf(%f,&score); if (score100|score0) printf(errorn);else switch(int)(score/10) case 10: case 9: grade=A;break; case 8: grade=B;break; case 7: grade=C;break; case 6: grade=D;break; case 5:case 4:case 3:case 2:case 1: case 0: grade=E; printf(成绩是 %5.1f,成绩等级是%c.n ,score,grade); 5. 有一个函数: 写一段程序,输入x 的值,输出x,y 的值。#include void main() int x,y; printf(输入x:); scanf(%d,&x); if(x1) y=x; printf(x=%3d, y=x=%dn ,x,y); else if(x10) y=2*x-1; printf(x=%d, y=2*x-1=%dn,x,y);else y=3*x-11; printf(x=%d, y=3*x-11=%dn,x,y);6. 输出300400之间的全部素数,并按每行5个数输出。#include #includevoid main()int prime(int);int i,k,m;printf(300-400之间的素数为:n);for(i=300;i=400;i+)m=prime(i);if(m=1)k+;printf(%5d,i); if(k%5=0)printf(n);int prime(int i)int j,flag=1;for(j=2;j=sqrt(i);j+)if(i%j=0)flag=0;return(flag);7. 求Fibonacci数列的前20个数,并将其分5行输出# include # include void main() int m,k,i,n=0; for(m=300;m=400;m=m+1) k=sqrt(m); for (i=2;i=k+1)printf(%d ,m); n=n+1; if(n%5=0) printf(n); printf (n); 8. 求和1-10 (n!+3) 。#include void main() double s=0,t=1,sum=0; int n; for (n=1;n=10;n+) t=t*n; s=s+t; sum=s+3; printf(1!+3+2!+3.+10!+3=%fn,s); 9. 有一分数序列 ,求其前20项的和。#include void main() int i,n=20; double a=2,b=1,s=0,t; for (i=1;i=n;i+) s=s+b/a; t=a, a=a+b, b=t; printf(sum=%16.10fn,s);10. 输出小于500的所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为 。#include void main() int i,j,k,n; printf(水仙花数是: ); for (n=100;n500;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); 11. 给一个不多于6位的正整数,要求:求出它是几位数;分别输出每一位数字;按逆序输出各位数字,例如原数为158,应输出851#include void main() int n,m; printf(输入一个不多于六位的数字:); scanf(%d,&n); if(n99999) printf(它是六位数n); if(n9999) printf(它是五位数n); if(n999) printf(它是四位数n); if(n99) printf(它是三位数n); if(n9) printf(它是二位数n); if(n=0) printf(它是一位数n); printf(各位数字按逆序输出为:n); while(n!=0) m=n%10; n=n/10; printf(%3d,m); 12. 求5+55+555+5555+55555的值。#include void main() int a=5,n=5,i=1,sn=0,tn=0;for(i=1;i=5;i+) tn=tn+a; sn=sn+tn; a=a*10; printf(5+55+.+55555=%dn,sn); 13 对10个数用起泡法排序 14 二维数组a,b行列互换 15 3列4行的数组求最大元素及其行列数 16 求一行字符的单词数 17 求3个字符串的最大者 18 输入两个数,求最大者 19 求两整数的最大公约数和最小公倍数 20 求4个数最大者,嵌套调用 21 用递归法求5! 22 求数组一5个元素和数组二10个元素各元素的平均值 23 数组逆序重新存放 24 递归法将整数n转换成字符串 13. 输入10个整型整数,用起泡法对这10个数排序,并该由小到大顺序在屏幕上输出。#include stdio.hvoid main() int a10; int i,j,t; printf(input 10 number:n); for(i=0;i10;i+) scanf(%d,&ai); for(i=0;i10;i+) for(j=i;jaj+1) t=ai;ai=aj+1;aj+1=t; for(i=0;i10;i+) printf(%5d ,ai); printf(n); 14. 将一个二维数组a的行和列的元素互换(即行列互换),存到另一个二维数组b中。#include stdio.hvoid main() int a45,b54; int i,j; for(i=0;i4;i+) for(j=0;j5;j+) scanf(%d,&aij); for(i=0;i5;i+) for(j=0;j4;j+) bij=aji; printf(该数组的新序列为:n); for(i=0;i5;i+) for(j=0;j4;j+) printf(%5d,bij); printf(n); 15. 在一个3*4的二维数组a中,要求编程求出其中值最大的那个元素的值,并输出其所在的行号和列号。 #include stdio.hvoid main() int a34,i,j,max; for(i=0;i3;i+) for(j=0;j4;j+) scanf(%d,&aij); max=a00; for(i=0;i3;i+) for(j=0;j4;j+) if(maxaij) max=aij; printf(max=%dn,max); for(i=0;i3;i+) for(j=0;j4;j+) if(aij=max) printf(行=%2d,列=%2dn,i+1,j+1); 16. 输入一行字符,统计其中有多少个单词,单词之间用空格分隔开。#include void main() int i,j=0; char str80; gets(str); for(i=0;stri!=0;i+) if(stri+1= |stri+1=0) j+; printf(单词个数为%dn,j); 17. 有3个字符串,要求找出其中最大者。#include #include void main()char str180,str280,str380,longest80;gets(str1);printf(n);gets(str2);printf(n);gets(str3); strcpy(longest,str1);if(strcmp(str1,str2)0) strcpy(longest,str1);if(strcmp(str2,str3)0) strcpy(longest,str1);printf(the longest is %s,longest);18. 输入两个整数,要求用一个函数求出其中的大者,并在主函数中输出此值。#include void main() int f(int a,int b); int m,n,max; printf(请输入两个数:); scanf(%d,%d,&m,&n); max=f(m,n); printf(max=%d,max);int f(int a,int b)int c;c=ab?a:b;return(c);19. 输入两个整数,要求用一个函数求出其最大公约数和最小公倍数,并在主函数中调用该子函数。#include void main() int hcf(int,int); int lcd(int,int,int); int u,v,h,l; scanf(%d,%d,&u,&v); h=hcf(u,v); printf(最大公约数=%dn,h); l=lcd(u,v,h); printf(最小公倍数=%dn,l); int hcf(int u,int v)int t,r; if (vu) t=u;u=v;v=t; while (r=u%v)!=0) u=v; v=r; return(v);int lcd(int u,int v,int h) return(u*v/h); 20. 输入4个整数,找出其中最大的数。用函数的嵌套调用来处理。#include void main() int max_4(int a,int b,int c,int d); int a,b,c,d,max; printf(Please enter 4 interger numbers:); scanf(%d %d %d %d,&a,&b,&c,&d); max=max_4(a,b,c,d); printf(max=%d n,max); int max_4(int a,int b,int c,int d) int max_2(int a,int b); int m; m=max_2(a,b); m=max_2(m,c); m=max_2(m,d); return(m);int max_2(int a,int b)return(ab?a:b);21.用递归方法求5!。#include void main() long fac(int n); long y; y=fac(5); printf(5!=%ldn,y);long fac(int n) long f; if(n0) printf(n0,data error!); else if(n=0,n=1) f=1; else f=fac(n-1)*n; return(f); 22、编写一个函数,用来分别求数组score_1(有5个元素)和数组score_2(有10个元素)各元素的平均值。#include void main() float f(float score,int n); float score_15,score_210,aver_1,aver_2; int i; for(i=0;i5;i+) scanf(%f,&score_1i); for(i=0;i10;i+) scanf(%f,&score_2i); aver_1=f(score_1,5); aver_2=f(score_2,10); printf(aver_1=%f,aver_2=%fn,aver_1,aver_2);float f(float score,int n)int i;float aver,sum=0;for(i=0;in;i+) sum=sum+scorei; aver=sum/n; return(aver);23 将一个数组中的值按逆序重新存放。例如,原来顺序为8,6,5,4,1改后成为1,4,5,6,8。#include void main() int a6,b6,i; printf(请输入一个数组:); for(i=0;i6;i+) scanf(%d,&ai); printf(逆序排列后的数组是:); for(i=0;i6;i+) bi=a5-i; printf(%4d ,bi); 24 用递归法将一个整数n转换成字符串。例如,输入483,应输出字符串“483”,n的位数不确定,可以是任意位数的整数。#include void main() void convert(int n); int number; printf(input an integer: ); scanf(%d,&number); printf(output: ); if (number0) putchar(-);putchar( ); number=-number; convert(number); printf(n); void convert(int n) int i; if (i=n/10)!=0) convert(i); putchar(n%10+0); putchar(32); 25 指针输出3个整数从小到大排列 26 指针输出3个整数从大到小排列 27 指针实现数组b10个元素逆序存放 28 冒泡法将10整数从大到小排序 29 选择法将10整数从小到大排序 30 定义结构体变量计算当天是本年的第几天 31 设计候选人得票统计程序 32 输出学生信息 33 输出教师信息 34 输出职员信息 35 建立动态数组输入5个成绩并检查输出不合格的成绩 36 求一个字符串的长度25. 用指针实现输入3个整数并按从小到大的顺序输出。#include void main() void exchange(int * p1,int * p2,int * p3); int n1,n2,n3; int * p1,* p2,* p3; printf(input three integer n1,n2,n3:); scanf(%d,%d,%d,&n1,&n2,&n3); p1=&n1; p2=&n2;p3=&n3; exchange(p1,p2,p3); printf(Now,the order is:%d,%d,%d,n1,n2,n3);void exchange(int * p1,int * p2,int * p3)void swap(int * p1,int * p2);if(* p1* p2) swap( p1, p2);if(* p1* p3) swap(p1,p3);if(* p2* p3) swap(p2,p3);void swap(int * p1,int * p2)int p;p=* p1;* p1=* p2;* p2=p;26、用指针实现输入3个整数并按从大到小的顺序输出。 #include void main ( ) void paixu(int * p1,int * p2); int a,b,c,* p1,* p2,* p3;printf(please enter a,b,c:); scanf(%d,%d,%d,&a,&b,&c); p1=&a;p2=&b;p3=&c; if(ab) paixu(p1,p2); if(ac) paixu(p1,p3); if(bc) paixu(p2,p3) ; printf(%5d%5d%5dn,a,b,c); void paixu(int * p1,int * p2) int t; t=* p1;* p1=* p2;* p2=t; 27、用指针实现将数组b10中的元素按逆序存放。#include void main()void sort (char *p,int m); int i; char *p,b10; printf(please input these numbers:n); for (i=0;i10;i+) scanf(%d,&numi); p=&num0; sort(p,10); printf(Now,the sequence is:n); for (i=0;i10;i+) printf(%d ,numi);printf(n);void sort (char *p,int m)int i; char temp, *p1,*p2; for (i=0;im/2;i+) p1=p+i; p2=p+(m-1-i); temp=*p1; *p1=*p2; *p2=temp; 28. 用冒泡法实现对10个整数按从大到小的顺序排序输出(要求用指针实现)。#include void main() void swap(int * p1,int * p2); int a10,* p ,i,j; printf(input 10 number:n); for(i=0;i10;i+) scanf(%d,&ai); p=a; for(i=0;i10;i+) for(j=i;j9;j+) if(aiaj+1) swap(p+i,p+j+1); for(i=0;i10;i+) printf(%5d ,ai); printf(n); void swap(int * p1,int * p2)int t;t=* p1;* p1=* p2;* p2=t;29、用选择法实现对10个整数按从小到大的顺序排序输出(要求用指针实现)。#include void main() void swap(int * p1,int * p2); int a10,* p ,i,j; printf(input 10 number:n); for(i=0;i10;i+) scanf(%d,&ai); p=a; for(i=0;i10;i+) for(j=0;jaj+1) swap(p+j,p+j+1); for(i=0;i10;i+) printf(%5d ,ai); printf(n); void swap(int * p1,int * p2)int t;t=* p1;* p1=* p2;* p2=t; 30. 定义一个结构体变量(包括年、月、日)。计算当天是本年中的第几天,注意闰年问题。#include struct int year; int month; int day; date;void main() int days; printf(input year,month,day:); scanf(%d,%d,%d,&date. year,&date.month,&date.day); switch(date.month) case 1: days=date.day; break; case 2: days=date.day+31; break; case 3: days=date.day+59; break; case 4: days=date.day+90; break; case 5: days=date.day+120; break; case 6: days=date.day+151; break; case 7: days=date.day+181; break; case 8: days=date.day+212; break; case 9: days=date.day+243; break; case 10: days=date.day+273; break; case 11: days=date.day+304; break; case 12: days=date.day+334; break; if (date.year %4= 0 & date.year % 100 != 0 |date.year % 400 = 0) & date.month =3) days+=1; printf(%d/%d is the %dth day in %d.n,date.month,date.day,days,date.year);31 设计候选人得票统计程序,要求有4个侯选人(分别是Zhang 、Wang 、Li、 Zhao),选民每次输入一个被选人的姓名,最后统计出各人的得票结果。#include #include struct person char name20; int count; leader4=zhang,0,wang,0,li,0,zhao,0; void main() int i,j; char leader_name20; for (i=1;i=10;i+) scanf(%s,leader_name); for(j=0;j4;j+) if(strcmp(leader_name,)=0) leaderj.count+; printf(nResoult:n); for(i=0;i4;i+) printf(%5s:%dn,,leaderi.count); 32、定义一个包括学号、姓名、年龄的学生结构体,要求实现三个学生信息的输入输出,并输出平均年龄#include #define N 3struct student char num6; char name20; int age; stuN;void main()int i,aver=0; for(i=0;iN;i+) printf(input scores of student %d:n,i+1); printf(NO.:); scanf(%s,stui.num); printf(name:); scanf(%s,); printf(age :); scanf(%d,&stui.age); printf( NO. name agen); for (i=0;iN;i+) printf(%5s%10s%9d,stui.num,,stui.age); printf(n); for(i=0;iN;i+) aver=aver+stui.age; aver=aver/3; printf(aver=%d,aver);33、定义一个包括教师编号、姓名、工资的教师结构体,要求实现三个教师信息的输入输出,并输出平均工资。#include #define N 3struct teacher char num6; char name20; float pay; teaN;void main()int i;float aver=0; for(i=0;iN;i+) printf(input scores of student %d:n,i+1); printf(NO.:); scanf(%s,teai.num); printf(name:); scanf(%s,); printf(pay :); scanf(%f,&teai.pay); printf( NO. name payn); for (i=0;iN;i+) printf(%5s%10s%9.2f,teai.num,,teai.pay); printf(n); for(i=0;iN;i+) aver=aver+teai.pay; aver=aver/N; printf(aver=%f,aver);34、定义一个包括职员号、姓名、工资的职员结构体,要求实现三个职员信息的输入输出,并输出平均工资。#include #define N 3struct worker char num6; char name20; float pay; workN;void main()int i;float aver=0; for(i=0;iN;i+) printf(input scores of worker %d:n,i+1); printf(NO.:); scanf(%s,worki.num); printf(name:); scanf(%s,); printf(pay :); scanf(%f,&worki.pay); printf( NO. name payn); for (i=0;iN;i+) printf(%5s%10s%9.2f,worki.num,,worki.pay); printf(n); for(i=0;iN;i+) aver=aver+worki.pay; aver=aver/N; printf(aver=%f,aver); 35 建立动态数组,输入5个学生的成绩,另外用一个函数检查其中有无低于60分的,输出不合格的成绩。#include #include void main() void check(int *); int *p1,i; void *p2; p2=malloc(5*sizeof(int); p1=(int *)p2; for(i=0;i5;i+) scanf(%d,p1+i); check(p1); free(p2); void check(int *p) int i; printf(They are fail:); for(i=0;i5;i+) if (pi60) printf(%d ,pi); printf(n); 36 写一函数,求一个字符串的长度。在main函数中输入字符串,并输出其长度(要求用指针实现)。#include void main()int length(char *p);int len;char str20;printf(input string: );scanf(%s,str);len=length(str);printf(The length of string is %d.n,len);int length(char *p) int n; n=0; while (*p!=0) n+; p+; return(n); 37 一维数组放10个成绩,求平均成绩并输出不及格的 38 求10个数中最大,小值,平均值 39 找二维数组的鞍点,即元素在该行最大该列最小 40 8个学生4门课的成绩求三个问题 41 将一行字符串最长单词输出 42 输出金字塔图案 43 输入一个数按原来的规律插入数组中 44 判断素数 45 统计4行文章60个字符中英文词的信息 46 电文密码 47 n个人的圈子报数,到3退出,求留下是几号 48 10个学生3门课程的成绩,输出总平均成绩,以及最高分的信息 49 将一字符串的元音字母复制到另一字符串,输出 50 输入月份号,输出英文名 37. 有一个一维数组score,内放10个学生成绩,用一个函数求平均成绩,并将10个成绩中不及格(小于60)的成绩和该成绩在数组中的序号输出。#include void main() void fail(float score,int n); float score10; int i; for(i=0;i10;i+) scanf(%f,&scorei); fail(score,10); void fail(float score,int n) int i; for(i=0;in;i+) if(scorei60) printf(成绩为%f,序号为%dn,scorei,i+1); 38. 有一个一维数组内放10个数,设计函数,求出10个数中的最大值、最小值、平均值。#include void main() int a10,i,max,min,sum=0; float average; printf(input 10 number:n); for(i=0;i10;i+) scanf(%d,&ai);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025技术顾问聘用合同书范本
- 敏捷人才发展模式-洞察及研究
- 2025公司租赁合同模板
- 2025股权激励计划合同股权转让操作流程
- 2025工程合同担保书(标准版)
- 冲压返修人员前安全培训课件
- 冲压安全生产培训心得
- 2025年二手房东租赁合同范本
- 2025年河北省农产品采购合同模板
- 冲击波碎石科课件
- 色彩基础知识ppt
- 寻找消失的滇缅路:松山战痕课件
- 中小学教师职业道德规范解读
- 政府预算理论与实务(第四版)全套教学课件
- 四年级上册美术课件第1课 送给老师的花|沪教版
- 轧机设备安装施工方案
- 最新开工报告范文
- 制药企业仓库温湿度分布的验证
- GB∕T 3099.4-2021 紧固件术语 控制、检查、交付、接收和质量
- 山东临清实验中学2012学年八年级语文 7课背影共3课时教案(表格版) 人教新课标版
- 深圳牛津小学英语单词汇总
评论
0/150
提交评论