7-28 求整数的位数及各位数字之和 (15 point(s))

By | 最新修改:2024-08-17

声明

这是 拼题A(PTA)《中M2019秋C入门和进阶练习集》的习题。原题在 https://pintia.cn/problem-sets/1163286449659043840/problems/1174288506294865976 (侵删)

本人的答案仅供交流学习,请勿用于当作答案来提交!

题目描述

7-28 求整数的位数及各位数字之和 (15 point(s))

对于给定的正整数N,求它的位数及其各位数字之和。

输入格式:
输入在一行中给出一个不超过10 的 9 次方整数N。

输出格式:
在一行中输出N的位数及其各位数字之和,中间用一个空格隔开。

输入样例:
321
输出样例:
3 6

我的答案

/*================================================================
*   Copyright (C) 2019 程序知路. All rights reserved.
*   
*   Filename    :7-28-求整数的位数及各位数字之和.c
*   Author      :程序知路
*   E-Mail      :admin@icxzl.com
*   Create Date :2019年11月19日
*   Description :
================================================================*/
#include <stdio.h>

void work(long num);

int main() {
    long N;
    scanf("%ld", &N);
    if (N <= 1000000000)
        work(N);

    return 0;
}

void work(long num) {
    int sum = 0;
    int count = 0;
    int remainder;

    while (num > 0) {

        remainder = (int)(num % 10L);
        sum += remainder;

        num /= 10;

        count ++;
    }

    printf("%d %d", count, sum);
}


程序知路

鉴于本人的相关知识储备以及能力有限,本博客的观点和描述如有错漏或是有考虑不周到的地方还请多多包涵,欢迎互相探讨,一起学习,共同进步。

本文章可以转载,但是需要说明来源出处!

本文使用的部分图片来源于网上,若是侵权,请与本文作者联系删除: admin@icxzl.com