代码改变世界

Hdu1001(1到100的和)

2014-06-09 22:48  小八哥的Acm  阅读(345)  评论(0编辑  收藏  举报

常规算法

 1 #include <stdio.h>
 2 int main()
 3 {
 4     // 常规算法 
 5     int a;
 6      while(scanf("%d",&a)!=EOF){
 7     int i=0,sum = 0;     
 8     for(i;i<=a;i++){
 9         printf("%d\n",i);
10              sum+=i;
11          }
12          printf("%d\n\n",sum);         
13     }
14     return 0;
15 }

 

高斯定理

#include <stdio.h>
int main()
{
    // 高斯定理 
    int a , sum =0;  
    while(scanf("%d",&a)!=EOF){
        if(a%2==0)
            sum=a/2*(1+a);
        else
            sum = (1+a)/2*a;
        printf("%d\n\n",sum); 
    }
    return 0;

}

说明:

1.题目标识说结果不能超过32bit ,所以在考虑高斯定理的时候需要判断输入的数字是否为被2整除

2.题目说明 followed by a blank line 表示 间隔一个空行 所以要注意printf("%d\n\n",sum); 为两个换行符