上一章:新手村任務
下一章:變數與輸入
回目錄:國立科學園區實驗中學C++程式語言自學講義
在上一章,我們成功執行了空程式。
空程式名副其實,什麼功能也沒有,就是一個空空的小黑窗。
在這一章,我們要讓小黑窗印出訊息。
cout << "Hello";
以上這行程式,就是讓小黑窗印出「Hello」的功能
你可以改成任何你想印出的資訊,例如
cout << "Bang!";
無論如何,只要想印出資訊,一定先打一個cout,然後兩個小於符號(<<),接著是想印出的訊息,並在前後用雙引號(")包住。
這個用雙引號包住的訊息,我們稱做字串
【學生練習題】
如果想要在文字間換行
(這是錯誤的程式喔!)
cout << "This is a line
That is another line" ;
直接在程式裡面幫句子換行的話,按下執行是會跳出錯誤的!
那麼究竟要怎麼讓電腦印出「換行」的文字呢?
在C++語言裡,換行符號是endl
把要輸出的文字依照想換行的地方拆開
每次只輸出一句,輸出之後都接上換行符號endl
cout << "This is a line" << endl;
cout << "That is another line" << endl;
如此一來,就可以印出兩行文字了
如果想印三行也是可以的,就算是100行也可以喔
cout << "I have a pen" << endl;
cout << "I have an apple" << endl;
cout << "Ah, apple pen" << endl;
Q:為什麼
endl
不能直接接在字串後面呢?
像是"I have a pen endl"
或是"I have a pen"endl
?
因為endl
本身不是字串,是程式語言裡的特殊代碼
在C++輸出的規則裡,如果想連續輸出不同類型的東西(例如字串和endl
),就要用<<
這個符號來把訊息「串起來」
如果只想用一次cout
就輸出完好幾行,該怎麼做呢?
有兩種方法
第一種方法,其實endl
這個符號不一定要放在每句程式的末端,只要再用<<
把它和下一句話串起來就能達成一樣的換行效果,例如
cout << "I have a pen" << endl << "I have an apple" << endl << "Ah, apple pen" << endl;
第二種方法,有一個符號\n
代表的就是換行的「字串」,它和endl
不一樣,它真的是字串,可以直接放在字串裡面喔,例如
cout << "I have a pen\nI have an apple\nAh, apple pen\n";
只要把\n
這個符號放在任何想換行的地方,就可以印出換行的效果了
你可能會覺得寫完之後看了覺得這種寫法好亂
沒錯我也這麼覺得
所以我習慣上還是會每一行分開寫(一行一個cout
配一個endl
)
不過還是以你自己喜歡為主!
試著運行看看這行程式
cout << 1+2+3 ;
小黑窗會直接印出6呢!
這就是程式的運算功能,不管是加減乘除還是更複雜的運算都做得到
記得1+2+3
不是字串,不需要放在雙引號內,直接寫就好囉!
也可以試試更複雜的
cout << (8+10)*6/4-3 ;
一切的運算規則就和數學的規則一樣,括號優先,然後先乘除,後加減
如果想要將兩個運算結果用空白隔開,可以這樣做
cout << 1+2+3 << " " << 4+5+6 ;
還記得上一段所說,只要想把不同的訊息接連著印出來,就可以用<<
來把訊息串成一串
當然,中間的字串可以改成任何想要的字串
就算不放任何字串也是可以的
cout << 1+2+3 << 4+5+6 ;
這樣小黑窗印出的就會是615,6和15黏在一起了
未來我們在green judge上做的題目,大多都會是要用空格隔開答案的
如果忘記該怎麼做,可以再回來這篇看喔!
上一章:新手村任務
下一章:變數與輸入
回目錄:國立科學園區實驗中學C++程式語言自學講義