搜档网
当前位置:搜档网 › 几个简单的c语言源程序

几个简单的c语言源程序

几个简单的c语言源程序
几个简单的c语言源程序

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 ",m);

}

sushu(j)

{

int n,m=0;

for(n=2;n

if(j%n!=0)

m++;

if(m==j-2)

return 1;

else

return 0;

}

void main()

{

int a,i;

printf("请输入一个整数:");

scanf("%d",&a);

printf("\n整数%d可分解为:\n",a);

for(i=2;i<=a/2;i++)

if(a%i==0&&sushu(i)==1)

{

printf("%d",i);

zhishu(i,a);

}

printf("1^1\n\n");

}

2》看你的星座的程序:

#include

void main()

{

int m,d;

float s;

printf("请输入你的生日(月、日):\n");

scanf("%d",&m);

scanf("%d",&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");

}

3》天干地支年的计算:

#include

void main()

{

int a,i,j;

printf("请输入公历年份:");

scanf("%d",&a);

i=(a-3)%10;

j=(a-3)%12;

printf("%d年是",a);

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");

}

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

#include

void main()

{ int a,b;double s,GPA;

printf("请输入期末考试的成绩:");

scanf("%d",&a);

printf("请输入平时课业的成绩:");

scanf("%d",&b);

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",s);

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",GPA);

if(GPA>=1.0)

printf("该学生及格了!\n\n");

else

printf("该学生不及格!\n\n");

}

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

#include

void main()

{

int a,b;

double s,GPA;

printf("请输入期末考试的成绩:");

scanf("%d",&a);

printf("请输入平时课业的成绩:");

scanf("%d",&b);

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",s);

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",GPA);

}

6》判断你胖不胖:

#include

void main()

{

float a,b;

double i,j;

printf("请输入你的体重(kg):");

scanf("%f",&a);

printf("请输入你的身高(m):");

scanf("%f",&b);

i=a/b;

j=i/b;

printf("你的体质指数是:%.2f\n",j);

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");

}

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",&m);

printf("请输入你要查找的%d维数范围中的最大数:",m);

scanf("%d",&a);

printf("该范围内你要查找的%d维数有:\n",m);

while(n

{

s=0;

i=n;

while(i>0)

{

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 ",s);

n=n+1;

}

printf("\n\n");

}

8》n个数排列的计算:

#include

#define n 5

void main()

{

int a[n],i,p,j,m,q=n;

printf("请输入这%d个数(两个数之间用空格键或enter键隔开):\n",q);

for(i=0;i

scanf("%d",&a[i]);

printf("请判断:\n是从大到小排列请输入1\n否则从小到大排列请输入0:\n");

scanf("%d",&m);

printf("\n\n");

if(m==1)

{

for(j=n;j>=1;j--)

{

for(i=0;i

if(a[i]

{

p=a[i+1];

a[i+1]=a[i];

a[i]=p;

}

}

printf("这%d个数从大到小排列的顺序是:\n",q);

for(i=0;i

printf("%d ",a[i]);

}

else

if(m==0)

{

for(j=n;j>=1;j--)

{

for(i=0;i

if(a[i]>a[i+1])

{

p=a[i+1];

a[i+1]=a[i];

a[i]=p;

}

}

printf("这%d个数从小到大排列的顺序是:\n",q);

for(i=0;i

printf("%d ",a[i]);

}

else

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

printf("\n\n");

}

相关主题