PAT考試C 總結(二)

2021-09-20 18:49:31 字數 1426 閱讀 9911

1.abs()絕對值,pow()次方,sqrt()開方,使用時需要加上標頭檔案cmath

2.reverse(a,b),將某陣列部分全部倒序,a為起始位址,b為終點位址,倒序部分不包括b。使用時需要加上標頭檔案algorithm

3.c++的幾種輸入輸出方式:

cin:遇到空格或換行結束

cin.get(字元變數名),用來接收字元,只獲取乙個字元,可以接收空格,遇回車結束

cin.get(陣列名,接收字元數目),用來接收字串,可以接收空格,遇回車結束。

cin.get(),沒有引數,主要用於捨棄輸入流中不需要的字元,或者捨棄回車,即捨棄輸入流中的乙個字元。

cin.getline():接收乙個字串,可以接收空格等,最後乙個字元為『\0』

getchar():獲取乙個字元,函式值為獲取的字元

4.list用法:

5.接收一段有規律格式不定長的資料可以用下面方式,eof表輸入的結束:

while(scanf("%d %d",&m,&n)!=eof)
6.struct結構體的定義:

struct name;
結構體的初始化常用指標,假設有個結構體stu,有name的屬性,那麼使用應該如下:

stu *s=new stu();

string n=s->name;

7.vector序列容器,乙個長度可變的序列,用來存放 t 型別的物件。必要時,可以自動增加容量,但只能在序列的末尾高效地增加或刪除元素,使用時需要加上標頭檔案vector

常用函式:

begin():返回容器首位址對應指標

end():返回容器尾位址對應指標

push_back():新增元素

emplace_back():新增元素,相比push_back()更高效,並減少了記憶體的浪費

size():返回容器大小

8.對於資料量較大的情況應該使用scanf和printf輸出,避免超時

9.vector獲取指定位置元素直接用中括號加序列號即可,如s[1]。list陣列就不能像vector一樣獲取指定位置的元素

10.用string的compare方法來比較兩字串之間是否相等,如果相等返回值為0

string str1,str2;

//相等

if(str1.compare(str2)==0)

11.stringstream用於c++型別轉換,可以理解成吃進去一種資料型別吐出來你需要的資料型別,使用時需要加上標頭檔案sstream,下面舉乙個string轉int的例子,其他型別也類似:

string a="123";

int b;

stringstream ss;

ss<>b;//這一步結束後,b為123

PAT甲級C 總結(二)

1.stl 中的find begin,end,val 方法用於查詢某物件,begin和end為查詢的首尾位址,區間是左閉右開,val為查詢的值,如果找到將返回指定的位址,如果沒找到,將返回引數end 2.dfs演算法中,如果對於圖的路徑陣列maps n n 出現了記憶體受限,可以使用vectorma...

PAT考試大綱

考生應具備以下基本能力 1 基本的c c 的 設計能力,以及相關開發環境的基本除錯技巧 2 理解並掌握最基本的資料儲存結構,即 陣列 鍊錶 3 理解並熟練程式設計實現與基本資料結構相關的基礎演算法,包括遞迴 排序 查詢等 4 能夠分析演算法的時間複雜度 空間複雜度和演算法穩定性 5 具備問題抽象和建...

PAT1041考試座位號(c)

每個 pat 考生在參加考試時都會被分配兩個座位號,乙個是試機座位,乙個是考試座位。正常情況下,考生在入場時先得到試機座位號碼,入座進入試機狀態後,系統會顯示該考生的考試座位號碼,考試時考生需要換到考試座位就座。但有些考生遲到了,試機已經結束,他們只能拿著領到的試機座位號碼求助於你,從後台查出他們的...