搜索
查看: 1366|回复: 8
打印 上一主题 下一主题

能成功,但最后数值不对,是不是数据类型不适合

[复制链接]
跳转到指定楼层
楼主
发表于 2013-11-24 11:24:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
#include <stdio.h>#include <stdlib.h>main(void){
            int a,b,c,aa,bb,cc;        int d,e,f;        int n=(aa-a)*1461/4+f;        int y=bb*15+f;        int yy=b*15+e;        __int64 gg=n+y-yy;   printf("出生年\n");     scanf("%d",&a);   printf("出生月\n");     scanf("%d",&b);   printf("出生日\n");     scanf("%d",&c);   printf("现年\n");     scanf("%d",&aa);   printf("现月\n");     scanf("%d",&bb);   printf("现日\n");     scanf("%d",&cc);   printf("出生那年是润年输入1,否输入0\n");     scanf("%d",&d);   printf("出生那月是大输入1,是7或8输入2,否输入0\n");     scanf("%d",&e);   printf("现月是大输入1,是7或是8输入2,否输入0\n");     scanf("%d",&f);   printf("你活了:\n");   printf("%I64d天\n",gg);        system("pause");return 0;}


最佳答案

查看完整内容

帮你改了下代码,按您的思路写,不过这段代码计算不是准备的,,
沙发
发表于 2013-11-24 11:24:50 | 只看该作者
帮你改了下代码,按您的思路写,不过这段代码计算不是准备的,,
  1. #include <stdio.h>
  2. #include <stdlib.h>

  3. main(void)
  4. {
  5.     int years,months,days;    //出生的年月日
  6.         int years_t,months_t,days_t;//今天的年月日
  7.         int all_days_ss;//一共活了N天;
  8.        
  9.         int all_years_days;   //活了多少年的天数;
  10.         int all_months_days;//活了多少朋的天数;
  11.        
  12.         printf("出生年\n");     
  13.         scanf("%d",&years);   
  14.         printf("出生月\n");     
  15.         scanf("%d",&months);   
  16.         printf("出生日\n");     
  17.         scanf("%d",&days);   
  18.         printf("现年\n");     
  19.         scanf("%d",&years_t);   
  20.         printf("现月\n");     
  21.         scanf("%d",&months_t);   
  22.         printf("现日\n");     
  23.         scanf("%d",&days_t);        
  24.         if(years/4 !=0)
  25.         {
  26.             printf("你出生那年不是闰年\n");       
  27.         }
  28.         else
  29.         {
  30.                 printf("您出生的那年是闰年\n");
  31.         }  
  32.         if(years_t>years)
  33.         {
  34.                 printf("您活了\n");
  35.                 all_days_ss=(years_t-years)*365+(months_t-months)*30+(days_t-days);//没有计算闰月,和二月份
  36.                 printf("%d天\n",all_days_ss);
  37.         }
  38.         else
  39.         {
  40.                 printf("你输入的数据有误!\n");
  41.         }
  42.        
  43.         system("pause");
  44.         return 0;
  45. }
复制代码
板凳
发表于 2013-11-24 11:29:29 | 只看该作者
楼主你的写代码习惯很不好,我看了半天才看明白
地板
 楼主| 发表于 2013-11-24 11:36:44 | 只看该作者
4399APPLE 发表于 2013-11-24 11:29
楼主你的写代码习惯很不好,我看了半天才看明白

不好意识啦~自学的C,完全是新手
5#
发表于 2013-11-24 12:14:42 | 只看该作者
丶Maped 发表于 2013-11-24 11:36
不好意识啦~自学的C,完全是新手

什么是
  1. 不好意识
复制代码
6#
发表于 2013-11-27 12:44:32 | 只看该作者
李掌柜 发表于 2013-11-24 13:01
帮你改了下代码,按您的思路写,不过这段代码计算不是准备的,,

好像看起来有错误。。。
7#
发表于 2013-12-1 20:26:20 | 只看该作者
{:soso_e134:}看你的代码表示晕乎乎的
8#
 楼主| 发表于 2014-1-1 16:51:31 | 只看该作者
{:soso_e120:}似乎是错的,我问题主要是有什么数据类型可以最大,大概是出生到现在几天,我是要计算这个~
9#
发表于 2014-1-1 20:04:40 | 只看该作者
丶Maped 发表于 2014-1-1 16:51
似乎是错的,我问题主要是有什么数据类型可以最大,大概是出生到现在几天,我是要计算这个~

用int就够了
主流平台上的int上限大于21亿
而30年才10000多天
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表