个位数统计

题目:

  题目链接

  

 

代码及思路:

#include <stdio.h>
#include <string.h>
int main()
{
    //以字符串的形式接受用户输入的数字
    char str[1000];
    //定义一个统计数组
    int nums1[10] = {0};
    scanf("%s", str);
    //计算字符串的长度
    int len = strlen(str);
    //定义数组 用于接受字符串转换后的数组
    int nums[len];
    //定义循环变量
    int i = 0;
    int j = 0;
    //将字符串转换为数组
    while (str[i] != '\0')
    {
        //将字符转换为数字
        nums[i] = str[i] - '0';
        i++;
    }

    //统计数字中各个数字出现的次数
    //核心算法
    for (i = 0; i < len; i++)
    {
        for (j = 0; j < 10; j++)
            if (nums[i] == j)
                nums1[j]++;

    }

    //打印输出结果
    for (i = 0; i < 10; i++)
    {
        if (nums1[i] != 0)
            printf("%d:%d\n",i,nums1[i]);
    }
    return 0;
}

 

运行结果:

   

 

posted @ 2020-03-17 22:01  陈太浪  阅读(418)  评论(0编辑  收藏  举报