c++程式設計課程筆記
l 在c++中,將資料從乙個物件到另乙個物件的流動抽象為「流」。流在使用前要被建立,使用後要被刪除。
l 資料的輸入與輸出是通過i/o流來實現的,cin和cout是預定義的流類物件。cin用來處理標準輸入,即鍵盤輸入。cout用來處理標準輸出,即螢幕輸出。
l 從流中獲取資料的操作稱為提取操作,向流中新增資料的操作稱為插入操作。
l 「<<」是預定義的插入符,作用在流類物件cout上便可以實現項標準輸出裝置輸出。
n cout << 表示式 << 表示式...
l 標準輸入是將提取符作用在流類物件cin上。
n cin >> 表示式 >> 表示式...
l 提取符可以連續寫多個,每個後面跟乙個表示式,該表示式通常是用於存放輸入值的變數。例如:
n int a, b;
n cin >> a >> b;
操縱符名
含 義
dec數值資料採用十進位制表示
hex數值資料採用十六進製制表示
oct數值資料採用八進位制表示
ws提取空白符
endl
插入換行符,並重新整理流
ends
插入空字元
setsprecision(int)
設定浮點數的小數字數(包括小數點)
setw(int)
設定域寬
例:cout << setw(5) << setprecision(3) << 3.1415;
if語句
if (表示式) 語句
例:if (x > y) cout << x;
if (表示式) 語句1 else 語句2
例:if (x > y) cout << x;
else cout << y;
if (表示式1) 語句1
else if (表示式2) 語句2
else if (表示式3) 語句3
…else 語句 n
#include
using namespace std;
int main() 來確定層次關係。
輸入兩個整數,比較兩個數的大小
#include
using namespace std;
int main() 。
n 表示式、判斷值都是int型或char型。
n 如果若干分支執行內容相同可共用一組語句。
#include
using namespace std;
int main() while (n != 0);
cout << endl;
return 0;
#include
using namespace std;
int main() while (i <= 10);
cout << "sum = " << sum << endl;
return 0;
程式1:
#include
using namespace std;
int main() while (i <= 10);
cout << "sum=" << sum
<< endl;
return 0;
for語句
l for語句語法形式:
l for語句的另一種形式:範圍for語句:
for (宣告:表示式)語句
#include
using namespace std;
int main() ;
例:enum weekday ;
預設情況下
sun=0,mon=1,tue=2,......,sat=6
l 不限定作用域列舉型別:
enum 列舉型別名 ;
l 限定作用域的enum類將在第4章介紹。
l 列舉元素是常量,不能對它們賦值
例如有如下定義
enum weekday ;
不能寫賦值表示式:sun = 0
l 列舉元素具有預設值,它們依次為: 0,1,2,......。
l 也可以在宣告時另行指定列舉元素的值,如:
enum weekday;
l 也可以在宣告時另行指定列舉元素的值;
l 列舉值可以進行關係運算。
l 整數值不能直接賦給列舉變數,如需要將整數賦值給列舉變數,應進行強
制型別轉換。
l 列舉值可以賦給整型變數。
l 設某次體育比賽的結果有四種可能:勝(win)、負(lose)、平局(tie)、比賽取消(cancel),編寫程式順序輸出這四種情況。
l 分析:
比賽結果只有四種可能,可以宣告乙個列舉型別。
#include
using namespace std;
enum gameresult ;
int main() {
gameresult result;
enum gameresult omit = cancel;
for (int count = win; count <= cancel; count++) {
result = gameresult(count);
if (result == omit)
cout << "the game was cancelled" << endl;
else {
cout << "the game was played ";
if (result == win) cout << "and we won!";
if (result == lose) cout << "and we lost.";
cout << endl;
return 0;
l auto:編譯器通過初始值自動推斷變數的型別
n 例如:auto val = val1 + val2;
如果val1+val2是int型別,則val是int型別;
如果val1+val2是double型別,則val是double型別。
l decltype:定義乙個變數與某一表示式的型別相同,但並不用該表示式初始化變數
n 例如:decltype(i) j = 2;
4月9日上機作業
1.編寫乙個簡單程式,要求陣列長度為5,靜態賦值10,20,30,40,50,在控制台輸出該陣列的值。package demo1 public class d1 for int i 0 i 2.編寫乙個簡單程式,要求陣列長度為5,動態賦值10,20,30,40,50,在控制台輸出該陣列的值。pack...
C 學習紀要 12 7月23日
7月23日 星期四 天氣晴 大暑啊。昨天下午偷懶了。什麼都沒寫就走人。主要因為昨天下午辛苦耕耘,終於將備份恢復嚮導模組的整體整合和測試工作做完了。今天早上花了乙個早上的時間將專案融合到團隊伺服器中,發現teamserver還挺難用的。終於弄完了,忙裡偷閒過來寫兩句,安排一下接下來的工作 首先,取消按...
8月23日生活
今天起的早一些,於是開啟電腦,對ftp伺服器中的遊戲進行公升級.gf打 說白天休息,於是我讓她來我家。到我家不久,bdx網咖打來 說一些電腦上不了網,於是匆匆趕去。經查是一交換器出現故障,去華美換了一台24 2,安上解決。中午,買點菜回家吃飯。下午去公司。來到公司後,除z和y,其餘小伙均出去幹活了。...