[hide]引用于数组–排序–组成最大数
[code lang=”c”]
#include "stdio.h"
int main(int argc, char **argv)
{
char ch;
int arr[10] = {0}; //存储各个数字出现的次数,初始化为0
//统计各个数字出现的次数
while(1)
{
ch = getchar();
if (ch == ‘\n’)
{
break;
}
arr[ch – ‘0’]++;
}
int i, j;
//输出各个数字出现的次数
for (i = 9; i >= 0; i–)
{
printf("数字%d 出现%d次.\n", i, arr[i]);
}
//输出这些数组成的最大的数
printf("\n组成的最大的数:\n");
for (i = 9; i >= 0; i–)
{
for(j = arr[i]; j > 0; j–)
printf("%d", i);
}
printf("\n");
//输出这些数组成的最小的数,注意:0不输出
printf("\n组成的最小的数:\n");
for (i = 1; i <= 9; i++) { for(j = arr[i]; j > 0; j–)
printf("%d", i);
}
printf("\n");
return 0;
} [/code]
[/hide]