L1 003 個位數統計 15分

2021-10-09 16:48:26 字數 1750 閱讀 2410

#include

#include

using

namespace std;

intmain()

; cin>>a;

int l=

strlen

(a);

//sizeof=1000

cout<<

"length:"

int i=

0;i)for

(int j=

0;j<

10;j++

)}

需要注意的兩個地方

1、輸入為止長度的數用char陣列直接cin>>陣列名

2、求長度的時候注意用strlen,sizeof求的是陣列空間長度

用getchar()放在快取區,直到使用者輸入回車(\n)

#include

#include

using

namespace std;

intmain()

;while

((a=

getchar()

)!='\n'

)for

(int j=

0;j<

10;j++

)}

注意就是getchar的標頭檔案是#include

這個是我向別人學來的

#include

#include

#include

using

namespace std;

map<

int,

int> mp;

intmain()

map<

int,

int>

::iterator it =mp.

begin()

;while

(it!=mp.

end())

}

map用為對映,是常用的stl容器

1、標頭檔案

#include

using namespace std;

2、定義

mapmp;

注意如果是字串到整形的對映,必須是string

3、map容器內元素的訪問

①通過下標訪問

【注意】map的鍵是唯一的

mp[『c』]=20;

②通過迭代器訪問

定義方式與其他stl容器迭代器相同

【不同】

map迭代器的使用方式和其他stl容器的迭代器不同

因為map的每一對對映都有兩個typename

這決定了必須通過乙個it來同時訪問鍵和值

事實上,map可以使用it->first來訪問鍵

使用it->second來訪問值

在建立對映的過程中會自動實現從小到大的排序功能

4、map常用函式

①find()

find(key)返回鍵是key的對映的迭代器

②erase()

(1)刪除單個元素

a.mp.erase(it),it為需要刪除的元素的迭代器

b.mp.erase(key),key為欲刪除的對映的鍵

e.g.mp.erase(『c』);

(2)刪除乙個區間內的所有元素

還是左閉右開

(3)size()

用來獲得map中對映的次數

(4)clear()

清空

L1 003 個位數統計 (15 分

給定乙個 k 位整數 n d k 1 10 k 1 d 1 10 1 d 0 0 d i 9,i 0,k 1,d k 1 0 請編寫程式統計每種不同的個位數字出現的次數。例如 給定 n 100311,則有 2 個 0,3 個 1,和 1 個 3。輸入格式 每個輸入包含 1 個測試用例,即乙個不超過 ...

L1 003 個位數統計 15分

題目詳情 方法一 include include using namespace std intmain len 也可以用memset a,0,sizeof a 初始化。memset函式標頭檔案為 include string s cin s len s.size for int i 0 i a s...

L1 003 個位數統計 15分

給定乙個 k 位整數 輸入格式 每個輸入包含 1 個測試用例,即乙個不超過 1000 位的正整數 n。輸出格式 對 n 中每一種不同的個位數字,以 d m 的格式在一行中輸出該位數字 d 及其在 n 現的次數 m。要求按 d 的公升序輸出。輸入樣例 100311 輸出樣例 0 21 33 1 此題我...