算法學的零零散散,藍橋勉強拿個國三,acm慘敗,稱著假期,好好從頭開始,也是學長建議,刷演算法筆記
前面是基礎、瀏覽一遍,查漏補缺即可:
1.絕對值在10^9範圍以內的整數都可以定義成int型
2.題目要求超過2147483647,如10^10或者10^18次方,就得用long long來儲存
3.雙精度double,8b,64位,有效精度15~16位
4.0~9的ascii:48~57 a~z的ascii:65~90 a~z的ascii:97~122
5.cin、cout輸出所耗費的時間遠遠多於scanf和printf
6.%md m位右對齊輸出,高位補空格
7.%0md m位右對齊輸出,高位補0
8.floor(double x):向下取整 ceil(double x) :向上取整
9.power(double r,double p) :r^p pow(double x,int n):x,n
10.log(double x) lnx x以自然對數為底的對數、c語言中沒有對任意底數求對數的函式,必須用換底公式來求 eg:logab=logeb/logea
11.round(double x) 對x四捨五入
12.memset函式 memset(陣列名,值,sizeof(陣列名)) (需要#include) memset按位元組賦值,每個位元組賦一樣的值,由於0的二進位制補碼全為0,-1的二進位制補碼全為1,初學賦值0,-1不易弄錯,賦其他值要用fill函式
eg:memset(a,0,sizeof(a))全部賦值0
memset(a,-1,sizeof(a))全部賦值-1
13.fill函式 fill(a,a+5,233)陣列a[0]~a[4]均賦值為233 比memset好用,不過效率低一些,且包含在algorithm裡
14.sscanf與sprinf (stdio.h下)
1.sscanf理解為:string+scanf 從string裡面讀
char str[100];
sscanf(str,"%d",&n); 從左到右將str中的內容以"%d"形式傳到n裡 string->int
string可以非法,遇到非法字元自動停止 eg: sscanf("2.2a2","%lf",&doubl); doubl被賦值 2.2
2.sprintf理解為:string+printf 輸出到string裡
char str[100];
sprintf(str,"%d",n); 從右到左將n以"%d"的格式寫到str字元陣列裡 int->string
3. string轉int還可以用 int atoi(char*); eg:int n=atoi("12345")+1; int n=atoi(str.c_str());
15.一般的oj系統,一秒能承受的運算次數大概是10^7~10^8
16. 檔案結束符結束
while(scanf("%d",&a)!=eof){}
while(scanf("%d",&a)!=-1){}
while(cin>>a){}
while(scanf("%s",str)!=eof){}
while(gets(str)!=null){}
17 自定義資料型別 typedef long long ll;
18%lld輸出long long
19 c++switch後的case寫「str"再用switch(string)無法匹配所以switch後面的常量表示式並不是可以支援任意型別,char 和 int 用switch 比較合適,其他型別不建議使用switch
20.freopen("input.txt","r",stdin);//從檔案input中讀資料 不用自己乙個乙個輸入 檔案可以寫絕對路徑,相對路徑預設根目錄是.exe目錄
freopen("out.txt","w",stdout);//輸出到檔案out.txt內 不輸出到控制台
21. int_max int最大值 int_min int最小值
1、memset()函式只能初始化0和-1
2、string轉int還可以用 int atoi(char*); eg:int n=atoi("12345")+1; int n=atoi(str.c_str());
#includeusing namespace std;
int main(){
int n;
string str;
//atoi() char*轉int
3、sscanf 和atoi一樣 遇到非法字元會自動停止 開始就非法 則相當於沒賦值
CC 查漏補缺
培養個人才能,無可替代,確定個人職業目標,專業技術性人才,自主學速度習,提公升專業能力,打字速度是基本功,多加練習,實現盲打,提高準確度,速度,練習時間,3個月,每天1小時,專業書籍閱讀,不要期待別人一句句教你都很忙,沒時間搭理你。解決年齡焦慮,最好的辦法是行動,明確目標,腳踏實地。完善個人知識體系...
c c 面試總結 查漏補缺(二)
答 c和c 中struct的主要區別是c中的struct不可以含有成員函式,而c 中的struct可以。c 中struct和class的主要區別在於預設的訪問許可權不同,struct預設為public,而class預設為private 其次,c 中的類具有成員保護功能,並且具有繼承,多型這類oo特點...
c語言基礎查漏補缺
該部分只是用來記錄c語言模糊的知識點 以下寫法錯誤 char c 123 char c1 哦 1.作用 用來計算乙個變數或者乙個常量 一種資料型別所佔的記憶體位元組數。2.基本形式 sizeof 變數 常量 int size sizeof a sizeof 變數 常量 int size sizeof...