#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("\n\n\n\n\n\n\n\n\n\n\n\n 欢迎你的使用");
system("color 1d");
Sleep(1000);
system("color 1e");
Sleep(1000);
system("color 1b");
Sleep(1000);
int g;
while(g!=1)
{
system("cls");
system("color 1a");
char a[50][100]={"################################################",
"#以下软件版权归我所有 #",
"#如有侵权男的罚款1毛25 #",
"#女的请自觉给我个kiss #",
"#请按1进入加减乘除模式 #",
"#请按2判断质数合数 #",
"#请按3计算从你出生到现在一共多少天 #",
"#更多功能敬请期待 #",
"################################################",};
int aa,bb,cc,dd,ee,ff,gg,hh,ii,jj,kk,aaa,bbb,zz,ccc,ddd;
int b;
for(b=0;b<=8;b++)
puts(a[b]);
int c,h,i,j;
j=0;
float d,e,f;
c=getch();
while(g!=1)
{
if(c!='1' && c!='2' && c!='3')
{
printf("请输入正确的选项");
Sleep(1000);
break;
}
if(c=='1')
{
system("cls");
printf(" 恭喜你进入了加减乘除模式\n");
printf("请输入第一个数然后按回车键\n");
scanf("%f",&d);
printf("请输入第二个数然后按回车键\n");
scanf("%f",&e);
f=d+e;
printf("它们的和是%f\n",f);
f=d-e;
printf("它们的差是%f\n",f);
f=d*e;
printf("它们的积是%f\n",f);
f=d/e;
printf("它们的商是%f\n",f);
printf("已计算完毕\n");
printf("请按1退出程序\n请按2重新计算\n请按3返回上一层\n");
while(g!=1 && g!=3)
{
g=getch();
if(g!='1' && g!='2' && g!='3')
{
printf("请输入正确选项");
Sleep(1000);
break;
}
if(g=='1')
{
system("cls");
printf("\n\n\n\n\n\n\n\n\n\n\n\n 欢迎你再次使用");
system("color 1d");
Sleep(1000);
system("color 1e");
Sleep(1000);
system("color 1b");
Sleep(1000);
g=1;
break;
}
if(g=='2')
{
break;
}
if(g=='3')
{
break;
}
}
if(g=='3')
break;
}
if(c=='2')
{
system("cls");
printf("恭喜你进入判断质数合数模式\n");
printf("请输入要判断的数然后按回车键\n");
scanf("%d",&h);
for(b=2;b<=h-1;b++)
{
if(h%b==0)
{
j=1;
}
}
if(j==1)
{
printf("这个数是合数\n");
printf("它的因数有1,%d,",h);
for(b=2;b<=h-1;b++)
{
if(h%b==0)
{
j=1;
printf("%d,\n",b);
}
}
}
else
printf("这个数是质数\n");
printf("已判断完毕\n");
printf("请按1退出程序\n请按2重新判断\n请按3返回上一层\n");
g=getch();
if(g=='1')
{
system("cls");
printf("\n\n\n\n\n\n\n\n\n\n\n\n 欢迎你再次使用");
system("color 1d");
Sleep(1000);
system("color 1e");
Sleep(1000);
system("color 1b");
Sleep(1000);
g=1;
break;
}
if(g=='2')
{
continue;
}
if(g=='3')
{
break;
}
}
if(c=='3')
{
system("cls");
printf(" 恭喜你进入了计算从你出生到现在一共多少天模式\n");
printf("请输入你出生的年份然后按回车键");
scanf("%d",&aa);
printf("请输入你出生的月份然后按回车键");
scanf("%d",&bb);
printf("请输入你出生的号数然后按回车键");
scanf("%d",&cc);
printf("请输入现在的年份然后按回车键");
scanf("%d",&dd);
printf("请输入现在的月份然后按回车键");
scanf("%d",&ee);
printf("请输入现在的号数然后按回车键");
scanf("%d",&ff);
gg=0;
hh=aa;
for(ii=1;ii<=hh;ii++)
{
if(ii%100==0)
{
if(ii%400==0)
aa=366;
else
aa=365;
}
else
{
if(ii%4==0)
aa=366;
else
aa=365;
}
gg=gg+aa;
}
jj=0;
zz=dd;
for(ii=1;ii<=zz;ii++)
{
if(ii%100==0)
{
if(ii%400==0)
dd=366;
else
dd=365;
}
else
{
if(ii%4==0)
dd=366;
else
dd=365;
}
jj=jj+dd;
}
if(hh%100==0)
{
if(hh%400==0)
{
if(bb==1)bb=31;if(bb==2)bb=60;if(bb==3)bb=91;if(bb==4)bb=121;if(bb==5)bb=152;if(bb==6)bb=182;
if(bb==7)bb=213;if(bb==8)bb=244;if(bb==9)bb=274;if(bb==10)bb=305;if(bb==11)bb=335;if(bb==12)bb=366;
}
else
{
if(bb==1)bb=31;if(bb==2)bb=59;if(bb==3)bb=90;if(bb==4)bb=120;if(bb==5)bb=151;if(bb==6)bb=181;
if(bb==7)bb=212;if(bb==8)bb=243;if(bb==9)bb=273;if(b==10)bb=304;if(bb==11)bb=334;if(bb==12)bb=365;
}
}
else
{
if(hh%4==0)
{
if(bb==1)bb=31;if(bb==2)bb=60;if(bb==3)bb=91;if(bb==4)bb=121;if(bb==5)bb=152;if(bb==6)bb=182;
if(bb==7)bb=213;if(bb==8)bb=244;if(bb==9)bb=274;if(bb==10)bb=305;if(bb==11)bb=335;if(bb==12)bb=366;
}
else
{
if(bb==1)bb=31;if(bb==2)bb=59;if(bb==3)bb=90;if(bb==4)bb=120;if(bb==5)bb=151;if(bb==6)bb=181;
if(bb==7)bb=212;if(bb==8)bb=243;if(bb==9)bb=273;if(b==10)bb=304;if(bb==11)bb=334;if(bb==12)bb=365;
}
}
if(zz%100==0)
{
if(zz%400==0)
{
if(ee==1)ee=31;if(ee==2)ee=60;if(ee==3)ee=91;if(ee==4)ee=121;if(ee==5)ee=152;if(ee==6)ee=182;
if(ee==7)ee=213;if(ee==8)ee=244;if(ee==9)ee=274;if(ee==10)ee=305;if(ee==11)ee=335;if(ee==12)ee=366;
}
else
{
if(ee==1)ee=31;if(ee==2)ee=59;if(ee==3)ee=90;if(ee==4)ee=120;if(ee==5)ee=151;if(ee==6)ee=181;
if(ee==7)ee=212;if(ee==8)ee=243;if(ee==9)ee=273;if(ee==10)ee=304;if(ee==11)ee=334;if(ee==12)ee=365;
}
}
else
{
if(zz%4==0)
{
if(ee==1)ee=31;if(ee==2)ee=60;if(ee==3)ee=91;if(ee==4)ee=121;if(ee==5)ee=152;if(ee==6)ee=182;
if(ee==7)ee=213;if(ee==8)ee=244;if(ee==9)ee=274;if(ee==10)ee=305;if(ee==11)ee=335;if(ee==12)ee=366;
}
else
{
if(ee==1)ee=31;if(ee==2)ee=59;if(ee==3)ee=90;if(ee==4)ee=120;if(ee==5)ee=151;if(ee==6)ee=181;
if(ee==7)ee=212;if(ee==8)ee=243;if(ee==9)ee=273;if(ee==10)ee=304;if(ee==11)ee=334;if(ee==12)ee=365;
}
kk=gg+bb+cc;
aaa=jj+ee+ff;
bbb=aaa-kk;
printf("一共是%d天",bbb);
printf("已计算完毕\n");
printf("请按1退出程序\n请按2重新计算\n请按3返回上一层\n");
while(g!=1 && g!=3)
{
g=getch();
if(g!='1' && g!='2' && g!='3')
{
printf("请输入正确选项");
Sleep(1000);
break;
}
if(g=='1')
{
system("cls");
printf("\n\n\n\n\n\n\n\n\n\n\n\n 欢迎你再次使用");
system("color 1d");
Sleep(1000);
system("color 1e");
Sleep(1000);
system("color 1b");
Sleep(1000);
g=1;
break;
}
if(g=='2')
{
break;
}
if(g=='3')
{
break;
}
}
if(g=='3')
break;
}
}
}
}
}
我做了这个程序它的前两个功能都正常,可是最后一个功能,就是计算从出生到现在一共多少天哪里,出了一个很奇怪的毛病,输入出生的月份,是任何一个月份都正确,唯独输入的十月时得到的结果总是错误的,我有在网上用过一些计算从出生到现在一共多少天的软件测试过的
|