題目描述:測試
給定一個 k 位整數 N=dk−1 10k−1 +⋯+d1 101 +d0 (0≤di ≤9, i=0,⋯,k−1, dk−1 >0), 請編寫程序統計每種不一樣的個位數字出現的次數。例如:給定 N=100311,則有 2 個 0,3 個 1,和 1 個 3。 輸入格式: 每一個輸入包含 1 個測試用例,即一個不超過 1000 位的正整數 N。 輸出格式: 對 N 中每一種不一樣的個位數字,以 D:M 的格式在一行中輸出該位數字 D 及其在 N 中出現的次數 M。要求按 D 的升序輸出。 輸入樣例: 100311 輸出樣例: 0:2 1:3 3:1
本人AC代碼:spa
// PAT乙級 // PAT_1021_Count // 把輸入的數據按位拆分,並輸出0-9出現的次數 # include <stdio.h> # include <stdlib.h> # include <string.h> int main(void) { char ch[1001]; // 記錄輸入的數據 int i, len; int Count[10] = {0}; // 輸入字符串 gets(ch); len = strlen(ch); // 統計0-9出現的次數 for (i=0; i<len; i++) { Count[(ch[i]-'0')]++; } for (i=0; i<10; i++) { if (Count[i] != 0) printf("%d:%d\n",i,Count[i]); } return 0; }
RRRblog