广告广告
  加入我的最爱 设为首页 风格修改
首页 首尾
 手机版   订阅   地图  繁体 
您是第 5303 个阅读者
 
发表文章 发表投票 回覆文章
  可列印版   加为IE收藏   收藏主题   上一主题 | 下一主题   
csr
个人文章 个人相簿 个人日记 个人地图
小有名气
级别: 小有名气 该用户目前不上站
推文 x0 鲜花 x898
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
推文 x0
[C/C++][求助] 0-2006年,闰年总数
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
  int i,rem400,rem100,rem4,sum=0;
  for(i=0;i<=2006;i++)
  {
  rem400=i%400;
  rem100=i%100;
  rem4=i%4;
 
    if(((rem4==0)&&(rem100!=0))||(rem400==0))
  ..

访客只能看到部份内容,免费 加入会员 或由脸书 Google 可以看到全部内容



[ 此文章被csr在2011-03-04 22:46重新编辑 ]


献花 x0 回到顶端 [楼 主] From:台湾中华电信 | Posted:2011-03-04 22:29 |
totsi
数位造型
个人文章 个人相簿 个人日记 个人地图
小人物
级别: 小人物 该用户目前不上站
推文 x0 鲜花 x53
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

请问一下~

这边所说的闰年总和指的是所有润年的年份总和吗?
还是只要算出有几个闰年就好?

因为我看您提供的程式码里面,只有判定是否为闰年,并没有做任何计数的动作。^^m

如果要贴程式码的话,建议放在"复制程式
 
"里面,这样您贴的程式码就不会被当成网页内容进行排版了。


恩...
献花 x0 回到顶端 [1 楼] From:台湾中华电信 | Posted:2011-03-07 10:00 |
csr
个人文章 个人相簿 个人日记 个人地图
小有名气
级别: 小有名气 该用户目前不上站
推文 x0 鲜花 x898
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

大大您好
小弟现已有那一年是闰年了
现在就是要把这些闰年数目加起来看总数有多少个闰年
小弟有设一个变数sum=0
因为写不出来所以就没有计数动作
若大大可以帮忙
是否可帮小弟加总一下有多少个闰年(就是所有闰年个数总和)
谢谢


献花 x0 回到顶端 [2 楼] From:台湾行政院研考会 | Posted:2011-03-08 08:51 |
totsi
数位造型
个人文章 个人相簿 个人日记 个人地图
小人物
级别: 小人物 该用户目前不上站
推文 x0 鲜花 x53
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

目前只能用脑袋想,所以测试就要麻烦您玩玩看噜XDD

如果只是要算个数,是没那么复杂。

底下省略头尾的部份
复制程式
....
  if(((rem4==0)&&(rem100!=0))||(rem400==0))
  {
     ++sum;
     printf("闰年=%d\t",i);
  }
....


记得在进入回圈前要归零就是了。


[ 此文章被totsi在2011-03-09 15:03重新编辑 ]


恩...
献花 x0 回到顶端 [3 楼] From:台湾中华电信 | Posted:2011-03-08 14:28 |
csr
个人文章 个人相簿 个人日记 个人地图
小有名气
级别: 小有名气 该用户目前不上站
推文 x0 鲜花 x898
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

大大您好
跟据你的写法就和小弟重覆
if(((rem4==0)&&(rem100!=0))||(rem400==0))
    printf("闰年=%d\t",i);



if(((rem4==0)&&(rem100!=0))||(rem400==0))
{
  ++sum;
  printf("闰年=%d\t",i);
}
只是大大的程式码多了一个没有用到的++sum
在程式内多没去使用到
所以不管怎么用
结果还是跟小弟的一样
不知小弟这样说明
大大您可清楚
因为小弟要的是所有闰年个数及所有闰年个数的总和
比如说总数486个闰年
像这样的结果
谢谢
++sum;
  printf("闰年=%d\t",i);
小弟把 i 改成sum后结果如下
不知怎样把它弄整齐


[ 此文章被csr在2011-03-08 22:46重新编辑 ]


献花 x0 回到顶端 [4 楼] From:台湾中华电信 | Posted:2011-03-08 21:51 |
星辰雪
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x0 鲜花 x82
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

资料笔数太多
我觉得好难排整齐
我有测试了一下
但是都不怎么满意


「在现实孤独而痛苦的我啊,跟随着她走吧!因为你就像是落叶,毫无目的的落下,而她是只属于你的那阵风,将带你的心飞向自由。」
献花 x0 回到顶端 [5 楼] From:台湾中华电信 | Posted:2011-03-08 23:09 |
totsi
数位造型
个人文章 个人相簿 个人日记 个人地图
小人物
级别: 小人物 该用户目前不上站
推文 x0 鲜花 x53
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

Reference:
XL:判断年份是否为闰年的方法

Character Set要设定为Use Multi-Byte Character Set。
复制程式
#include "stdafx.h"
#include <windows.h>

int _tmain(int argc, _TCHAR* argv[])
{
       int nCountYear = 0;                                          //目前年份
       int nTotalLeapYearNum = 0;                     //总闰年个数
       int nTotalLeapYearSum = 0;                     //所有闰年年份总和
       int nStartYear = 0;                                                 //开始判定年份
       int nEndYear = 2006;                                   //最后判定年份

       printf("====== Start to show the Leap year between %d and %d =====\n", nStartYear, nEndYear);
       //NOTE:每年都判定
       for ( int nCountYear = nStartYear ; nCountYear <= nEndYear ; nCountYear++ )
       {
              if ( ((nCountYear%4 == 0) && (nCountYear%100 != 0)) ||                     //4的倍数,且不为100的倍数。              For 0~399
                      ((nCountYear%100 == 0) && (nCountYear%400 == 0) )              //100的倍数,且为400的倍数。              For 400~???
                      ) 
              {
                     ++nTotalLeapYearNum;                                                 //计算年份个数
                     nTotalLeapYearSum += nCountYear;              //计算年份总合
                     if ( nTotalLeapYearNum%10 != 0 )
                     {
                            printf("%04d  ", nCountYear);
                     }else{
                            printf("%04d\n", nCountYear);
                     }
              }
       }       //End of for ( int nCountYear = nStartYear ; nCountYear <= nEndYear ; nCountYear++ )
       
       printf("\n====== End to show the Leap year between %d and %d =====\n", nStartYear, nEndYear);
       printf("\n====== Statistics Data ======\n");
       printf("There are %d leap years.\n", nTotalLeapYearNum);
       printf("The sum of leap years is %d.\n", nTotalLeapYearSum);

       ::system("pause");
       return 0;
}


本帖包含附件
zip LeapYear.rar   (2022-06-09 14:17 / 283 KB)  
说明: Sample
下载次数:2


[ 此文章被totsi在2011-03-10 08:49重新编辑 ]


恩...
献花 x2 回到顶端 [6 楼] From:台湾中华电信 | Posted:2011-03-09 15:00 |
csr
个人文章 个人相簿 个人日记 个人地图
小有名气
级别: 小有名气 该用户目前不上站
推文 x0 鲜花 x898
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

大大
您的程式经过编译后
有下面两项 错误
一是连结也就是没定义`WinMain@16' 一是传回值是1
因小弟还没学那么难的写法
所以也不知卡在那里
希望大大您再看看
好吗
谢谢
[Linker error] undefined reference to `WinMain@16'
ld returned 1 exit status


[ 此文章被csr在2011-03-09 20:57重新编辑 ]


献花 x0 回到顶端 [7 楼] From:台湾中华电信 | Posted:2011-03-09 20:44 |
csr
个人文章 个人相簿 个人日记 个人地图
小有名气
级别: 小有名气 该用户目前不上站
推文 x0 鲜花 x898
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

有下载回来
感谢大大
不过可能小弟要研究一下
因为小弟还没学的那么复杂
谢谢


献花 x0 回到顶端 [8 楼] From:台湾行政院研究发展考核委员会 | Posted:2011-03-14 15:34 |
星辰雪
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x0 鲜花 x82
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

要使用 Visual Studio 当编译软体喔
不是使用 Dev c++

这排版 漂亮多了


「在现实孤独而痛苦的我啊,跟随着她走吧!因为你就像是落叶,毫无目的的落下,而她是只属于你的那阵风,将带你的心飞向自由。」
献花 x0 回到顶端 [9 楼] From:台湾教育部 | Posted:2011-03-14 16:56 |

首页  发表文章 发表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.093330 second(s),query:16 Gzip disabled
本站由 瀛睿律师事务所 担任常年法律顾问 | 免责声明 | 本网站已依台湾网站内容分级规定处理 | 连络我们 | 访客留言