HDU 1001Sum Problem(入门题,C,Java两个版本)

Sum Problem

Time Limit: 1000/500 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 392144    Accepted Submission(s): 98390


Problem Description
Hey, welcome to HDOJ(Hangzhou Dianzi University Online Judge).

In this problem, your task is to calculate SUM(n) = 1 + 2 + 3 + ... + n.
 

Input
The input will consist of a series of integers n, one integer per line.
 

Output
For each case, output SUM(n) in one line, followed by a blank line. You may assume the result will be in the range of 32-bit signed integer.
 

Sample Input
   
   
   
   
1 100
 

Sample Output
   
   
   
   
1 5050
 

Author
DOOM III

原题链接: http://acm.hdu.edu.cn/showproblem.php?pid=1001

C语言AC代码
#include <stdio.h>
int main()
{
    int i,n,sum;
    while (scanf("%d",&n)!=EOF)
    {
        sum=0;
        for (i=1;i<=n;i++)
        {
            sum+=i;
        }
        printf("%d\n\n",sum);
    }
    return 0;
}

C语言运用公式,但不知为什么要用double再取整!
#include<stdio.h>
int main()
{
	double n;
	while(scanf("%lf",&n)!=EOF)
		printf("%d\n\n",(int)(n*(n+1)/2));
	return 0;
}



Java AC代码:

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		while(sc.hasNext()){
			int n = sc.nextInt();
			int sum = 0;
			for(int i = 1; i<=n;i++){
				sum+=i;
			}
			System.out.println(sum);
			System.out.println();
		}
	}

}



你可能感兴趣的:(java,c,HDU1001)