L1-003 个位数统计 (15 分)
##代码
#include<stdio.h>
#include<string.h>
int main()
{
char str[1001];
gets(str);
int b[10] = {0};
int len = strlen(str);
for(int i = 0; i < len; i++)
{
b[str[i] - '0']++;
}
for(int i = 0; i < 10; i++)
{
if(b[i] != 0)
{
printf("%d:%d\n",i,b[i]);
}
}
return 0;
}
代码解释
```c
char str[1001];
gets(str);
因为输入的数字不知道是多少位,利用字符串输入,可以把数字分成很多个位数字,然后实现后续功能。
int b[10] = {0};
int len = strlen(str);
for(int i = 0; i < len; i++)
{
b[str[i] - '0']++;
}
利用计数器,数据结构中有。在本文章中定义了一个数组b【10】;b【10】中每个数据单位存储的就是数据相同的个数。