废话不说,咱们直接上车
索引
- 1.计算三角形面积
- 2.分段函数计算,输入一个x值,计算并输出y值。
- 3.求e=1+1/1!+1/2!+1/3!+……..+1/n!
- 4.最小公倍数
- 5.求最高分
- 6.求数列和
- 7.输出平均分和低于平均分学生成绩
- 8.从键盘输入一字符串,将其逆序输出。
- 9.字符串连接
- 10.字符串复制
- 11.编写函数,求1+2+3+…….+m。
- 12.用函数计算分段函数的值
- 13.编写函数,求3个整数最小值。
- 14.编写判断素数函数
- 15.编写求最大公约和最小公倍函数
- 16.编写求n个a的值的函数。
- 17.编写求数组中元素最大值函数。
- 18..编写函数排序数组元素
- 19.fibonacci数列递归函数
- 20.输入一字符串,查找字符’k’
- 21.判断字符串是否回文
- 22.输出所有的水仙花数(水仙花数:153= 1^3+ 5^ 3+3^3)
- 23.输出数列2、3、5、8、...(从第三项开始,每一项为前两项的和)的前二十项,且每行显示五个数
- 24.兀/4=1-1/3+1/5-1/7+...+(-1)^(n-1)*(1/(2n-1)),求兀
- 25.从键盘输入一个正整数,判断该数是否为素数
- 26.请输入m和n,求他们的最大公约数
- 27.百元买百鸡
- 28.从键盘输入一个整数n,求1!+2!+3!+...+n!
- 29.输入10个学生的成绩,求平均分、最高分和最低分
- 30.求Fibonacci数列的前30个数,将其保存在数组中,并按每行6个数输出(Fibonacci:0,1,1,2,3,5,8,13,21,34,...)
- 31.输入一个字符串,求该字符串的长度(例如:"VC"的长度为2)
- 32.从键盘输入一个字符串到字符数组a中,将其中的大写字母复制到另一个字符数组b中
- 33.用递归法求n!
- 34.编写一个将字符数组中所有小写字母转换成大写字母的函数,并在main()函数中调用该函数
- 35.输入一行字符,统计其中字母,数字,空格及其他字符的个数
- 36.求x和y的最大值
- 37.编写实现两个整数交换的自定义函数swap(),要求形参采用指针变量,在main()函数中输入两个整数,调用swap()函数后输出结果
- 38.编写求数组所有元素的平均值的自定义函数,在main()函数中输入学生人数和每个学生的成绩,调用自定义函数后输出平均分
- 39.求1+2+3+...+100的和
- 40.编程找出1000以内的所有完数(一个数如果恰好等于它的因子之和,这个数就称为“完数” 例如6=1+2+3)
1.计算三角形面积
#include
#include double area(double a,double b,double c) { double s,sarea=-1; if(a+b>c&&b+c>a&&c+a>b) { s=(a+b+c)/2; sarea=sqrt(s*(s-a)*(s-b)*(s-c)); } return sarea; } void main() { double a,b,c,sarea; printf("请输入三个数:"); scanf("%lf%lf%lf",&a,&b,&c); sarea=area(a,b,c); if(sarea>0) printf("可以构成三角形,其面积为:%.2lf\n",sarea); else printf("不可以构成三角形\n"); } 2.分段函数计算,输入一个x值,计算并输出y值。
#include
void main() { int x,y; scanf("%d",&x); if(x>-5 && x<0) y=x-1; else if(x==0) y=x; else if(x>0 && x<8) y=x+1; else y=10; printf("y=%d\n",y); } 3.求e=1+1/1!+1/2!+1/3!+………+1/n!
#include
void main () { int i=1; double s=1,e=1; while(1/s>=1E-5) { s=s*i; e=e+1/s; i++; } printf("e=%lf\n",e); } 4.最小公倍数
#include
void main () { int m,n,i; printf("请输入两个正整数: "); scanf("%d%d",&m,&n); for(i=m;;i++) if(i%m==0 && i%n==0) break; printf("%d,%d的最小公倍数为%d\n",m,n,i); } 5.求最高分
#include
void main() { int cj,max=0; printf("输入成绩,以负数结束: "); scanf ("%d",&cj); while(cj>=0) { if(cj>max) max=cj; scanf ("%d",&cj); } printf("最高分:%d\n",max); } 6.求数列和
#include
void main() { int a,b,t,i,n; double sum=0.0; printf("请输入n:"); scanf("%d",&n); a=2,b=1; for (i=1;i<=n;i++) { sum=sum+(double)a/b; t=a; a=a+b; b=t; } printf("sum=%f\n",sum); } 7.输出平均分和低于平均分学生成绩
#include
void main() { int a[100],i,n,score; float sum,ave; i=0,sum=0; while(1) { printf("请输入第%d个学生成绩: ",i+1); scanf("%d",&score); if(score<0) break; a[i]=score; sum+=a[i]; i++; } n=i; ave=sum/n; printf("平均分为: %.2f\n",ave); printf("低于平均分的成绩有: "); for(i=0;i 8.从键盘输入一字符串,将其逆序输出。
#include
#include void main() { char a[20]; int i; printf("请输入字符串:"); gets(a); for(i=strlen(a)-1;i>=0;i--) printf("%c",a[i]); printf("\n"); } 9.字符串连接
#include
void main() { char s1[80],s2[40]; int i,j; printf("请输入第1个字符串:"); gets(s1); printf("请输入第2个字符串:"); gets(s2); i=0; while(s1[i]!='\0') i++; j=0; while(s2[j]!='\0') s1[i++]=s2[j++]; s1[i]='\0'; printf(" 连接后的字符串为:%s\n",s1); } 10.字符串复制
#include
void main() { char s1[80],s2[80]; int i; printf("请输入一个字符串:"); gets(s2); for(i=0;s2[i]!='\0';i++) s1[i]=s2[i]; s1[i]='\0'; printf("复制后的字符串为:%s\n",s1); } 11.编写函数,求1+2+3+…….+m。
#include
int sum(int m) { int i,sumn=0; for(i=1;i<=m;i++) sumn=sumn+i; return sumn; } void main() { int m; int sumn; printf("请输入一个整数:"); scanf("%d",&m); sumn=sum(m); printf("1+2+3+...+%d=%d\n",m,sumn); } 12.用函数计算分段函数的值
#include
double fd(double x) { double y; if(x<0) y=x*x-2*x+1; else y=x*x*x+x+3; return y; } void main() { double x,y; scanf("%lf",&x); y=fd(x); printf("y=%.2lf\n",y); } 13.编写函数,求3个整数最小值。
#include
void main() { int min(int,int,int); int a,b,c,d,e,m1,m2; printf("请输入5个整数: "); scanf("%d%d%d%d%d",&a,&b,&c,&d,&e); m1=min(a,b,c); m2=min(m1,d,e); printf("最小值为: %d\n",m2); } int min(int x,int y,int z) { int m=x; if(m>y) m=y; if(m>z) m=z; return m; } 14.编写判断素数函数
#include
#include void main() { int prime(int m); int m,i; i=0; for(m=2;m<=100;m++) if(prime(m)) { printf("%5d",m); i++; if(i%5==0) printf("\n"); } printf("\n"); } int prime(int m) { int k,n; n=(int)sqrt(m); for(k=2;k<=n;k++) if(m%k==0) return 0; return 1; } 15.编写求最大公约和最小公倍函数
#include
int gy(int x,int y) { int gyxy,i; for(i=x;i>=1;i--) if(x%i==0&&y%i==0) {gyxy=i;break;} return gyxy; } int gb(int x,int y) { int gbxy,i; for(i=x;i<=x*y;i++) if(i%x==0&&i%y==0) {gbxy=i;break;} return gbxy; } void main() { int x,y,gyxy,gbxy; printf("请输入两个整数:"); scanf("%d%d",&x,&y); gyxy=gy(x,y); gbxy=gb(x,y); printf("%d和%d的最大公约数是:%d\n",x,y,gyxy); printf("%d和%d的最小公倍数是:%d\n",x,y,gbxy); } 16.编写求n个a的值的函数。
#include
int f(int a,int n) { int i,t=0; for(i=1;i<=n;i++) t=t*10+a; return t; } void main() { int a,n,i,s=0; printf("请输入两个整数a,n: "); scanf("%d%d",&a,&n); for(i=1;i<=n;i++) s=s+f(a,i); printf("结果为: %d\n",s); } 17.编写求数组中元素最大值函数。
#include
#define N 6 int max(int a[]) { int i,m; m=a[0]; for(i=1;i int i,b[N]; printf("请输入%d个整数: ",N); for(i=0;i 18…编写函数排序数组元素
//(1)顺序比较法 #include
void sort(int str[],int n) { int i,j; int t; for(i=0;i str[j]) { t=str[i]; str[i]=str[j]; str[j]=t; } } void main() { int i,n,str[100]; printf("请输入元素个数: "); scanf("%d",&n); printf("请输入%d个元素: ",n); for(i=0;i //(2)冒泡排序法 #include
void sort(int a[],int n) { int i,j,t; for(i=0;i a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } } void main() { int i,n,a[100]; //最多100个元素 printf("请输入元素个数: "); scanf("%d",&n); printf("请输入%d个元素: ",n); for(i=0;i 19.fibonacci数列递归函数
#include
int fib(int k) { int f; if(k==1) f=0; else if(k==2) f=1; else f=fib(k-1)+fib(k-2); return f; } void main() { int i,n; printf("请输入项数: "); scanf("%d",&n); printf("前%d项fibonacci数列为:",n); for(i=1;i<=n;i++) printf("%d ",fib(i)); printf("\n"); } 20.输入一字符串,查找字符’k’
#include
void main() { char a[100],*p=a; int flag=0; printf("请输入一个字符串: "); gets(a); while(*p!='\0') { if(*p=='k') { flag=1; break; } p++; } if(flag==1) printf("已找到!\n"); else printf("没找到\n"); } 21.判断字符串是否回文
#include
#include void main() { int hw(char *s); char s[80]; printf("请输入一个字符串: "); gets(s); if(hw(s)) printf("该字符串是回文!\n"); else printf("该字符串不是回文!\n"); } int hw(char *s) { int flag=1; char *p,*q; for( p=s,q=s+strlen(s)-1 ; p flag=0; break; } return flag; }
22.输出所有的水仙花数(水仙花数:153= 1^3+ 5^ 3+3^3)
#include
int main() { int i,j,k,n; for(i = 100;i < 1000;i++) { j = i%10; k = i/10%10; n = i/100; if(j*j*j + k*k*k + n*n*n == i) printf("%5d\n",i); } return 0; } 23.输出数列2、3、5、8、…(从第三项开始,每一项为前两项的和)的前二十项,且每行显示五个数
#include
void main() { int i,a1=2,a2=3,a3; printf("%6d%6d%6d",a1,a2); for(i=3;i<=20;i++) { a3=a1+a2; printf("%6d",a3); a1=a2; a2=a3; if(i%5==0) printf("\n"); } } 24.兀/4=1-1/3+1/5-1/7+…+(-1)^(n-1)*(1/(2n-1)),求兀
#include
#include void main() { double sum=0,pi,c=1,s=1;//c为当前项,s为符号位 int n=1; while(fabs(c)>=1e-6) { sum=sum+c; s=-s; n++; c=s/(2*n-1); } pi=4*sum; printf("pi=%lf\n",pi); } 25.从键盘输入一个正整数,判断该数是否为素数
#include
void main() { int i,m; scanf("%d",&m); for(i=2;i<=m-1;i++) if(m%i==0) break; if(i>m-1) printf("%d是素数\n",m); else printf("%d不是素数\n",m); } 26.请输入m和n,求他们的最大公约数
#include
void main() { int i,m,n; scanf("%d%d",&m,&n); for(i=m;i>=1;i--) { if(m%i==0 && n%i==0) break; } printf("最大公约数:%d\n",i); } 27.百元买百鸡
#include
void main() { int a,b,c; //a,b,c分别表示公鸡、母鸡和小鸡的数量 for(a=0;a<=19;a++) for(b=0;b<=33;b++) { c=100-a-b; if(5*a+3*b+b/3==100 && c%3==0) printf("公鸡:%d,母鸡:%d,小鸡:%d\n",a,b,c); } } 28.从键盘输入一个整数n,求1!+2!+3!+…+n!
#include
void main() { int i,j,n; long p,sum=0; scanf("%d",&n); for(i=1;i<=n;i++) { p=1; for(j=1;j<=i;j++) p=p*j; sum=sum+p; } printf("计算结果为:%d\n",sum); } 29.输入10个学生的成绩,求平均分、最高分和最低分
#include
void main() { int i,sum=0,max=0,min=100,c[10]; float ave; for(i=0;i<10;i++) { scanf("%d",&c[i]); sum=sum+c[i]; if(c[i]>max) max=c[i]; if(c[i] 30.求Fibonacci数列的前30个数,将其保存在数组中,并按每行6个数输出(Fibonacci:0,1,1,2,3,5,8,13,21,34,…)
#include
void main() { int i; long f[30]={0,1}; for(i=2;i<30;i++) f[i]=f[i-1]+f[i-2]; for(i=0;i<30;i++) { if(i%6==0) printf("\n"); printf("%10d",f[i]); } } 31.输入一个字符串,求该字符串的长度(例如:"VC"的长度为2)
#include
void main() { char a[20]; int i=0; scanf("%s",a); while(a[i]!='\0') i++; printf("%s的长度为:%d\n",a,i); } 32.从键盘输入一个字符串到字符数组a中,将其中的大写字母复制到另一个字符数组b中
#include
void main() { char a[20],b[20]; int i=0,j=0;//i和j分别为数组a和b的下标 gets(a); while(a[i]!='\0') { if(a[i]>='A' && a[i]<='Z') { b[j]=a[i]; j++; } i++; } b[j]='\0'; puts(b); } 33.用递归法求n!
#include
int fac(int n) { int f; if(n==1) f=1; else f=n*fac(n-1); return f; } void main() { int n,c; printf("请输入n的值:"); scanf("%d",&n); c=fac(n); printf("%d!=%d\n",n,c); } 34.编写一个将字符数组中所有小写字母转换成大写字母的函数,并在main()函数中调用该函数
#include
void change(char b[10]) { int i=0; while(b[i]!='\0') { if(b[i]>='a' && b[i]<='z') b[i]=b[i]-32; i++; } } void main() { char a[10]; printf("请输入一个字符串:"); gets(a); change(a); printf("调用函数后数组a的值:"); puts(a); } 35.输入一行字符,统计其中字母,数字,空格及其他字符的个数
#include
int letter,digit,space,others; void main() { char str[1000]; void count(char ch[]); printf("请输入一个字符串(<1000个字符):"); gets(str); letter=0; digit=0; space=0; others=0; count(str); printf("字母:%d\n 数字:%d\n 空格:%d\n 其他:%d\n",letter,digit,space,others); } void count(char ch[]) { int i=0; while(ch[i]!='\0') { if((ch[i]>='a' && ch[i]<='z')|| (ch[i]>='A' && ch[i]<='Z')) letter++; else if(ch[i]>='0' && ch[i]<='9') digit++; else if(ch[i]==' ') space++; else others++; i++; } } 36.求x和y的最大值
#include
void main() { int x,y,max,*px,*py; px=&x; py=&y; printf("请输入两个整数:"); scanf("%d%d",px,py); if(*px<*py) max=*py; else max=*px; printf("max=%d\n",max); } 37.编写实现两个整数交换的自定义函数swap(),要求形参采用指针变量,在main()函数中输入两个整数,调用swap()函数后输出结果
#include
void main() { int m,n; void swap(int *pm,int *pn); printf("请输入两个整数:"); scanf("%d%d",&m,&n); printf("交换前:m=%d,n=%d\n",m,n);//输出交换前两个实参的值 swap(&m,&n);//调用函数 printf("交换后:m=%d,n=%d\n",m,n);//输出交换后两个实参的值 } void swap(int *pm,int *pn) { int temp; temp=*pm; *pm=*pn; *pn=temp; } 38.编写求数组所有元素的平均值的自定义函数,在main()函数中输入学生人数和每个学生的成绩,调用自定义函数后输出平均分
#include
void main() { float score[100],ave; int i,n; float compute(float *a,int n); printf("请输入学生人数:"); scanf("%d",&n); printf("请输入学生成绩:"); for(i=0;i float sum=0,ave; int i; for(i=0;i 39.求1+2+3+…+100的和
#include
void main() { int sum=0,i=1; do { sum=sum+i; i=i+1; }while(i<=100); printf("sum=%d\n",sum); } 40.编程找出1000以内的所有完数(一个数如果恰好等于它的因子之和,这个数就称为“完数” 例如6=1+2+3)
#include
main() { static int k[10]; int i,j,n,s; for(j=2;j<1000;j++) { n=-1; s=j; for(i=1;i if((j%i)==0) { n++; s=s-i; k[n]=i; } } if(s==0) {printf("%d是一个完数: ",j); for(i=0;i <–精力有限,就先整理这么多–>
有错误的欢迎大家在评论区批评指正😍
以上这些仅供大家参考,建议大家不要照搬照抄,这对提升自己的编程能力没有任何的作用,最主要的是去理解、明白为什么这么写。
猜你喜欢
网友评论
- 搜索
- 最新文章
- 热门文章