九度OJ 1106:数字之和 (基础题)

来源:互联网 发布:weka c4.5决策树算法 编辑:程序博客网 时间:2024/05/05 03:20

时间限制:1 秒

内存限制:32 兆

特殊判题:

提交:2505

解决:1706

题目描述:

对于给定的正整数 n,计算其十进制形式下所有位置数字之和,并计算其平方的各位数字之和。

输入:

每行输入数据包括一个正整数n(0<n<40000),如果n=0 表示输入结束,并不用计算。

输出:

对于每个输入数据,计算其各位数字之和,以及其平方值的数字之和,输出在一行中,之间用一个空格分隔,但行末不要有空格。

样例输入:
41297399990
样例输出:
4 73 916 2239 36
来源:
2011年吉林大学计算机研究生机试真题

思路:

主要是分解数中各位数


代码:

#include <stdio.h> int sum(int n){    int count = 0;    while (n)    {        count += n%10;        n /= 10;    }    return count;} int main(void){    int n;     while (scanf("%d", &n) != EOF && n)    {        printf("%d %d\n", sum(n), sum(n*n));    }     return 0;}/**************************************************************    Problem: 1106    User: liangrx06    Language: C    Result: Accepted    Time:0 ms    Memory:912 kb****************************************************************/


0 0