答案(较长,包对)

关键词  •  3小时前


include

using namespace std;

int main() {

int n;           // 输入的三位数个数
cin >> n;

// 定义10个变量,分别统计数字0~9出现的次数,初始化为0
int cnt0 = 0, cnt1 = 0, cnt2 = 0, cnt3 = 0, cnt4 = 0;
int cnt5 = 0, cnt6 = 0, cnt7 = 0, cnt8 = 0, cnt9 = 0;

int num;         // 存放每个三位数
for (int i = 1; i <= n; i++) {
    cin >> num;
    
    // 提取百位、十位、个位
    int bai = num / 100;          // 百位
    int shi = (num / 10) % 10;    // 十位
    int ge = num % 10;             // 个位
    
    // 根据百位数字,增加对应计数器
    if (bai == 0) cnt0++;
    else if (bai == 1) cnt1++;
    else if (bai == 2) cnt2++;
    else if (bai == 3) cnt3++;
    else if (bai == 4) cnt4++;
    else if (bai == 5) cnt5++;
    else if (bai == 6) cnt6++;
    else if (bai == 7) cnt7++;
    else if (bai == 8) cnt8++;
    else if (bai == 9) cnt9++;
    
    // 根据十位数字,增加对应计数器
    if (shi == 0) cnt0++;
    else if (shi == 1) cnt1++;
    else if (shi == 2) cnt2++;
    else if (shi == 3) cnt3++;
    else if (shi == 4) cnt4++;
    else if (shi == 5) cnt5++;
    else if (shi == 6) cnt6++;
    else if (shi == 7) cnt7++;
    else if (shi == 8) cnt8++;
    else if (shi == 9) cnt9++;
    
    // 根据个位数字,增加对应计数器
    if (ge == 0) cnt0++;
    else if (ge == 1) cnt1++;
    else if (ge == 2) cnt2++;
    else if (ge == 3) cnt3++;
    else if (ge == 4) cnt4++;
    else if (ge == 5) cnt5++;
    else if (ge == 6) cnt6++;
    else if (ge == 7) cnt7++;
    else if (ge == 8) cnt8++;
    else if (ge == 9) cnt9++;
}

// 输出结果,每行一个数字,从0到9
cout << cnt0 << endl;
cout << cnt1 << endl;
cout << cnt2 << endl;
cout << cnt3 << endl;
cout << cnt4 << endl;
cout << cnt5 << endl;
cout << cnt6 << endl;
cout << cnt7 << endl;
cout << cnt8 << endl;
cout << cnt9 << endl;

return 0;

}


评论:

包对


关键词  •  3小时前

请先登录,才能进行评论