您的当前位置:首页正文

几个简单的c语言源程序

2020-05-13 来源:客趣旅游网
 - !

1》分解质因数的程序:

#include zhishu(x,y) { int m=1; while(y%x==0) { if(y%x==0) y=y/x; if(y%x==0) m++; } printf(\"^%d x \}

sushu(j) { int n,m=0; for(n=2;nvoid main() { int a,i; printf(\"请输入一个整数:\"); scanf(\"%d\

printf(\"\\n整数%d可分解为:\\n\ for(i=2;i<=a/2;i++) if(a%i==0&&sushu(i)==1) { printf(\"%d\ zhishu(i,a); } printf(\"1^1\\n\\n\"); }

11

- !

2》看你的星座的程序:

#include void main() { int m,d; float s; printf(\"请输入你的生日(月、日):\\n\"); scanf(\"%d\ scanf(\"%d\ if(m>12||m<1||d>31||d<1) printf(\"你输入的生日错误!\"); if(m>=1&&m<=12&&d>=1&&d<=31); { s=(float)(m+d/100); if(s>=3.21&&s<=4.20) printf(\"你的星座是:白羊座\"); else if(s>=4.21&&s<=5.20) printf(\"你的星座是:金牛座\"); else if(s>=5.21&&s<=6.21) printf(\"你的星座是:双子座\"); else if(s>=6.22&&s<=7.22) printf(\"你的星座是:巨蟹座\"); else if(s>=7.23&&s<=8.22) printf(\"你的星座是:狮子座\"); else if(s>=8.23&&s<=9.22) printf(\"你的星座是:处女座\"); else if(s>=9.23&&s<=10.23) printf(\"你的星座是:天秤座\"); else if(s>=10.24&&s<=11.21) printf(\"你的星座是:天蝎座\"); else if(s>=11.22&&s<=12.21) printf(\"你的星座是:射手座\");

else if((s<=12.31&&s>=12.22)||(s<=1.19&&s>1.00)) printf(\"你的星座是:摩羯座\"); else if(s>=1.20&&s<=2.18) printf(\"你的星座是:水瓶座\"); else if(s>=2.19&&s<=3.20) printf(\"你的星座是:双鱼座\"); else printf(\"ERRORS!OUT OF MY EXPECTATION!\"); } printf(\"\\n\\n\"); }

22

- !

3》天干地支年的计算:

#include void main() { int a,i,j; printf(\"请输入公历年份:\"); scanf(\"%d\ i=(a-3)%10; j=(a-3)%12; printf(\"%d年是 \ switch(i) { case 1: printf(\"甲\");break; case 2: printf(\"乙\");break; case 3: printf(\"丙\");break; case 4: printf(\"丁\");break; case 5: printf(\"戊\");break; case 6: printf(\"己\");break; case 7: printf(\"庚\");break; case 8: printf(\"辛\");break; case 9: printf(\"壬\");break; case 0: printf(\"癸\");break; } switch(j) { case 1:printf(\"子鼠\");break; case 2:printf(\"丑牛\");break; case 3:printf(\"寅虎\");break; case 4:printf(\"卯兔\");break; case 5:printf(\"辰龙\");break; case 6:printf(\"巳蛇\");break; case 7:printf(\"午马\");break; case 8:printf(\"未羊\");break; case 9:printf(\"申猴\");break; case 10:printf(\"酉鸡\");break; case 11:printf(\"戌狗\");break; case 0:printf(\"亥猪\");break; } printf(\"年 \\n\\n\"); }

33

- !

4》大学生一门课的成绩(人大):

#include void main()

{ int a,b;double s,GPA; printf(\"请输入期末考试的成绩:\"); scanf(\"%d\

printf(\"请输入平时课业的成绩:\"); scanf(\"%d\ if(a<=55&&a>=0) s=(double)a; else if(a>55&&a<=100) s=(double)0.6*a+(double)0.4*b; else printf(\"输入不正确!\"); printf(\"该学生的这门课的总成绩为:%.2lf\\n\ if(s>=90&&s<=100) GPA=(double)4.0; else if(s>=86&&s<90) GPA=(double)3.7; else if(s>=83&&s<86) GPA=(double)3.3; else if(s>=80&&s<83) GPA=(double)3.0; else if(s>=76&&s<80) GPA=(double)2.7; else if(s>=73&&s<76) GPA=(double)2.3; else if(s>=70&&s<73) GPA=(double)2.0; else if(s>=66&&s<70) GPA=(double)1.7; else if(s>=63&&s<66) GPA=(double)1.3; else if(s>=60&&s<63) GPA=(double)1.0; else

GPA=(double)0.0; printf(\"该学生的GPA是:%.1lf\\n\ if(GPA>=1.0) printf(\"该学生及格了!\\n\\n\"); else printf(\"该学生不及格!\\n\\n\"); }

44

- !

5》求大学生一门课成绩的算法(武大):

#include void main() { int a,b; double s,GPA; printf(\"请输入期末考试的成绩:\"); scanf(\"%d\

printf(\"请输入平时课业的成绩:\"); scanf(\"%d\ if(a<=55&&a>=0) s=(double)a; else if(a>55&&a<=100) s=(double)0.6*a+(double)0.4*b; else printf(\"输入不正确!\"); printf(\"该学生的这门课的总成绩为:%.2lf\\n\ if(s>=96&&s<=100) GPA=(double)4.3; else if(s>=90&&s<96) GPA=(double)4.0; else if(s>=85&&s<90) GPA=(double)3.7; else if(s>=80&&s<85) GPA=(double)3.3; else if(s>=75&&s<80) GPA=(double)3.0; else if(s>=70&&s<75) GPA=(double)2.7; else if(s>=67&&s<70) GPA=(double)2.3; else if(s>=63&&s<67) GPA=(double)2.0; else if(s>=60&&s<63) GPA=(double)1.7; else

GPA=(double)1.0; printf(\"该学生的GPA是:%.1lf\\n\\n\}

55

- !

6》判断你胖不胖:

#include void main() { float a,b; double i,j; printf(\"请输入你的体重(kg):\"); scanf(\"%f\

printf(\"请输入你的身高(m):\"); scanf(\"%f\ i=a/b; j=i/b;

printf(\"你的体质指数是:%.2f\\n\ if(j<14) printf(\"你已经瘦得不成样子了!!\"); else if(j<18.5&&j>=14) printf(\"你比较瘦了!\"); else if(j>=18.5&&j<24) printf(\"你很健康!\"); else if(j>=24&&j<28) printf(\"你只是稍微胖些。\"); else if(j>=28&&j<35) printf(\"你比较胖了!\"); else printf(\"你的胖超出了我的想象!!\"); printf(\"\\n\\n\"); }

66

- !

7》查找n叶梅花数,你想要什么数呢?如:三叶梅花数153=1^3+5^3+3^3

#include void main() { int n=2,i,j,a,s,m,s0,k; printf(\"请输入维数:\"); scanf(\"%d\ printf(\"请输入你要查找的%d维数范围中的最大数:\ scanf(\"%d\ printf(\"该范围内你要查找的%d维数有:\\n\ while(n0) { j=i%10; { s0=1; for(k=1;k<=m;k++) s0=s0*j; } s=s+s0; i=i/10; } if(s==n) printf(\"%d \ n=n+1; } printf(\"\\n\\n\"); }

77

- !

8》n个数排列的计算: #include #define n 5 void main() { int a[n],i,p,j,m,q=n; printf(\"请输入这%d个数(两个数之间用空格键或enter键隔开):\\n\ for(i=0;i=1;j--) { for(i=0;iprintf(\"%d \ } else if(m==0) { for(j=n;j>=1;j--) { for(i=0;ia[i+1]) { p=a[i+1]; a[i+1]=a[i]; a[i]=p; } }

printf(\"这%d个数从小到大排列的顺序是:\\n\ for(i=0;i88

- !

printf(\"%d \ }

else printf(\"你的判断只能是1或0!\"); printf(\"\\n\\n\"); }

99

因篇幅问题不能全部显示,请点此查看更多更全内容