C语言输入一串数字统计次数并把数字按从小到大输出
时间: 2024-10-25 11:03:07 浏览: 37
C语言字符串和数字转换函数
5星 · 资源好评率100%
在C语言中,你可以使用数组、循环以及计数结构(如`int count[100]`用于存储每个数字出现的次数)来完成这个任务。首先,读取用户输入的数字,并更新对应的计数数组;然后遍历数组,输出出现次数大于零的数字及其频率。
下面是一个简单的示例程序:
```c
#include <stdio.h>
#define MAX_DIGITS 100
int main() {
int numbers[MAX_DIGITS], count[MAX_DIGITS] = {0};
int n, i, temp;
printf("请输入一串数字(以空格分隔):");
scanf("%d", &n);
for (i = 0; i < n; i++) {
scanf("%d", &numbers[i]);
count[numbers[i]]++;
}
// 对数组进行排序,这里使用冒泡排序
for (i = 0; i < MAX_DIGITS - 1; i++) {
for (int j = 0; j < MAX_DIGITS - 1 - i; j++) {
if (count[j] > count[j + 1]) {
temp = count[j];
count[j] = count[j + 1];
count[j + 1] = temp;
}
}
}
printf("按从小到大的顺序输出数字及它们的出现次数:\n");
for (i = 0; i <= n; i++) {
if (count[i] > 0) {
printf("%d出现了 %d 次\n", i, count[i]);
}
}
return 0;
}
```
阅读全文