|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include<stdio.h>
看一下一些不熟悉的知识点,和下面的问题和逻辑错误
int main()
{
int i,sum,csyear,csmonth,csday,dqyear,dqmonth,dqday,myear,a,z,k;
float g;
sum=0;
int n[]={31,28,31,30,31,30,31,31,30,31,30,31};
scanf("%d",&i);
if(i%4==0&&i%100!=0)
{
n[1]=29;
}
//有差值得粗略天数
printf("请输入你的生日\n");
scanf("%d %d %d",&csyear,&csmonth,&csday);
printf("请输入当前日期\n");
scanf("%d %d %d",&dqyear,&dqmonth,&dqday);
for(int year=csyear;year<=dqyear;year++)
{
if(year%4==0&&year%100!=0){myear=366;}
else{myear=365;}
sum=sum+myear;
}
//算精确天数
//出生那一年应该减去的天数
for(a=0;a<csmonth-1;a++)
{
csday=csday+n[a];
}
//当前年应该剪掉的天数
dqday=n[dqmonth]-dqday;
for(int c=dqmonth;c<=11;c++)
{
dqday=dqday+n[c];
}
sum=sum-csday-dqday;
printf("你已经活了%d天/n",sum);
//80年的总天数
k=0;
for(int y=2006;y<=2006+80;y++)
{
if(y%4==0&&y%100!=0){z=366;}
else{z=365;}
k=k+z;
}
g=7048.0/k; 这里如果用sum/k,怎么搞成小数
printf("如果能活到80岁你还剩下%d\n",k-sum);
printf("你已经使用了%.2f的生命\n",g); 这里怎么把%打印到屏幕上实现24%的效果
return 0;
} |
|