1、 寫乙個功能與cat相似的程式,但將各行內容反序後輸出
print
reverse
<>;
print的引數是所要輸出的字串列表,也就是在列表上下文中呼叫reverse的結果。reverse的引數是要被倒置的字串列表,也就是在列表上下文中呼叫鑽石操作符的結果。鑽石操作符所返回的列表是由使用者選擇的所有檔案裡的每一行所組成的。這個列表與cat命令所輸出的結果相同。於是reverse會將此列表倒置,再交由print輸出
2、寫乙個程式,要求使用者分行鍵入各個字串,然後以20個字元寬、向右對齊的方式輸出每個字串。為了確定輸出結果在適當的字段中,請一併輸出由數字組成的「標尺行(rule line)」
#!/usr/bin/perl
print
"enter some lines, then press ctrl-d:\n";
chomp(my
@lines = );
print
"1234567890"x3, "\n";
foreach (@lines)
3、修改上乙個程式,讓使用者自行選擇字元寬度,因此在鍵入30的時候,hello、good-bye(在不同行上)應該會向右對齊到第30個字元。附加題:根據使用者鍵入的寬度,自動調整標尺行的寬度。
#!/usr/bin/perl
print
"what column width would you like?";
chomp(my
$width = );
print
"please entersome lines, then press ctrl-d:\n";
chomp(my
@lines = );
print
"1234567890"
x (($width+9)/10),"\n";
foreach (@lines)s\n", $_;
}
第五章習題
一 填空題 1 c 的兩種聯編方式為 靜態 聯編和 動態 聯編。2 c 支援兩種多型性,靜態聯編所支援的多型性被稱為 編譯時的多型性 動態聯編所支援的多型性被稱為 執行時的多型性 3 過載函式在編譯時表現出多型性,就是 靜態 聯編 而虛函式則在執行時表現出多型性是 動態 聯編。4 為了區分過載函式,...
C 第五章習題
1 將例5.1的程式片段補充和改寫成乙個完整 正確的程式,用公用繼承方式。在程式中應包括輸入資料的函式,在程式執行時輸入num name age addr的值,程式應輸出以上五個資料的值。class student 宣告基類 void student get value void student d...
C 第五章 習題
p162 5.18 編輯乙個學生和教師資料輸入和顯示程式,學生資料要編號 姓名 班號和成績,教師資料有編號 姓名 職稱和部門。要求將編號 姓名輸入和顯示設計成乙個類person,並作為學生資料操作類student和教師資料操作類teacher的基類。include includeusing name...