广东省消防建设工程申报网站,华为手表网站,企业的网站设计能否以为导向,社群营销平台有哪些这个题目要求的输出是一串数字#xff01;#xff01;#xff01;
不是下面#xff1a;输入在一行中给出 10 个非负整数#xff0c;顺序表示我们拥有数字 0、数字 1、……数字 9 的个数。整数间用一个空格分隔。10 个数字的总个数不超过 50#xff0c;且至少拥有 1 个非…这个题目要求的输出是一串数字
不是下面输入在一行中给出 10 个非负整数顺序表示我们拥有数字 0、数字 1、……数字 9 的个数。整数间用一个空格分隔。10 个数字的总个数不超过 50且至少拥有 1 个非 0 的数字。
输入5 8 5 5 1 1 0 0输入8个数两个0两个1三个5一个8
输出10015558
代码如下
#include stdio.h int main() { int a[100]; int b[10]{0}; char ch; int j,i0; do { scanf(%d, a[i]); i; } while ((ch getchar()) ! \n); for (j 0; j i; j){ switch(a[j]){ case 0:b[0];break; case 1:b[1];break; case 2:b[2];break; case 3:b[3];break; case 4:b[4];break; case 5:b[5];break; case 6:b[6];break; case 7:b[7];break; case 8:b[8];break; case 9:b[9];break; } } for(i1;i10;i) { if(b[i]!0) { printf(%d,i); b[i]--; break; } } for(i0;i10;i) { for(j0;jb[i];j) { printf(%d,i); } } return 0; }
结果如下
思路
这道题目首先现将输入的内容放到一个数组里面然后通过一个switch得到每一个数字出现的个数。然后根据这个个数找到不为0的第一个数字作为首位然后再从小到大输出即可。