重溫C (二)教材章節1 5 1 8

2021-10-10 17:27:55 字數 1596 閱讀 3848

1.變數與常量的定義:

這裡所體現出來的問題就是當初一味注重程式的編寫,對基礎知識的忽略。

「資料在程式中需要一定的表達方式,常量和變數就是用來表達資料的,其中常量又分為文字常量(literal constant)和常變數(也稱符號變數)——p7」

對於變數而言,定義乙個變數的時候即明確了它的四個屬性:名字、資料型別、允許的取值範圍和合法操作。

在變數定義時就對其初始化,可以避免引用到隨機變數。

變數定義可以出現在程式的任何位置,只要在使用該變數之前即可

常量是指取值在程式的執行過程中保持不變的量。其中, 文字變數指程式中直接給出的量,其儲存在程式區,而不是資料區。

「用常量說明符const給文字常量起個名字,這個識別符號就稱為識別符號常量,也稱常變數。——p11(1.5.3)」

常變數必須也只能在說明時進行初始化。

「常變數有兩個明顯的好處:一是增加程式的可讀性,便於理解常量的含義:二是增加程式的可維護性,假設某個變數在程式中多次出現,那麼如果需要修改該常量的值,就只需要在常變數的說明處進行維護,同時也避免了因漏改導致程式結果錯誤。——p11(1.5.3)」

2.運算子和表示式:

c++編譯器只會對除法運算中除數為0的情況提出錯誤,而溢位不作為錯誤處理。

c++的賦值運算子為「=」,其意義是將賦值號右邊的值送到左邊所標識的記憶體單元中。

「賦值號不是等號,它具有方向性。左運算元稱為左值,必須放在記憶體中可以訪問且可以合法修改值得儲存單元中,通常只能是變數名;右運算元稱為右值,可以是變數,也可以是變數或者表示式,但一定是能取得確定的值的。——p15」

對於前置++和後置++而言,操作物件是單個數時,並沒有區別,但含有其他表示式,則意義不同,如下:

int i=5,j=5,m,n;

m=i++; //m=5,i=6

n=++j;//j=n=6

3.邏輯運算子、邏輯表示式和邏輯表示式的求值優化:

當初這裡可以說就是沒有弄懂,當程式中有相關**的時候也基本不懂。

「c++中的邏輯值與整數值之間有乙個對應關係:真對應1,假對應0;反過來,0對應假,非0值對應真。所以邏輯運算的結果可作為整數參與其他運算,同時整數也可以參與邏輯運算。——p16」

覺得還需要一些題目來加強。

4.資料的輸入/輸出:

如果希望將鍵盤上輸入的所有字元(包括間隔符)都作為輸入字元賦給字元變數,則必須使用函式cin.get(),使用如下:

char c1,c2,c3,c4;

cin.get(c1);

cin.get(c2);

cin.get(c3);

cin.get(c4);

字串的輸入/輸出

「輸入字串的時候,使用getline()函式,其以回車作為結束,在此之前輸入的所有字元均放入字元陣列中,而字串在輸出時則可以直接輸出串常量,也可以用字元陣列名直接輸出字元陣列。——p27、28、29都有比較重要的內容,細看」

重溫C語言系列之二(函式的返回值)

1.函式的返回值不可以是區域性變數 2.函式內的區域性變數在函式呼叫完成之後自動銷毀,因為區域性變數是存放於棧空間內的 理論很明確,但是實際應用中還是有一些疑惑的。先找幾個常見的例子一步一步深入說明。這個執行結果是什麼?按照上面的理論,我們返回乙個區域性變數,這個區域性變數在函式呼叫完成後已被自動銷...

個人意見 錢能C 教材第二版的問題

我個人認為 浙江工業大學的錢能老師的 c 程式設計教程 第一版是國內中文c 教材中最好的,比較適合初學者,其內容的選取 深度 組織方式 例題 等都是非常好的 最適合大多數本科層次學過c語言的學生高階到c 不考慮少數極優秀的和少數基礎很差的 因為本科教材必須適應大多數學生的需要而 不是拔優或者補課。不...

2013計算機二級考試C語言章節題及答案5

二 填空題10.11 以下程式的輸出結果是 include stdio.h main int i for i 3 i 0 i i printf c p i printf n 答案 so 10.14 當執行以下程式時從鍵盤輸入字串qwerty和abcd,則程式的輸出結果是 include string...