MIT麻省理工學院的C語言實用程序設計課程涉及七個模塊的核心主題,其中第六模塊又分了兩個小的單元。下面我們介紹這門課程的重點主題內(nèi)容,同時分享一些課程相關的作業(yè)題目,備考的小伙伴可以練起來咯~
一、重點內(nèi)容
主題1:編寫、編譯和調(diào)試程序;預處理宏;c文件結(jié)構(gòu);變量;功能和問題陳述;從函數(shù)返回
主題2:類型、運算符、表達式
主題3:控制流、函數(shù)、變量范圍、靜態(tài)和全局變量、I/O: printf和scanf、文件I/O、字符數(shù)組、錯誤處理、標簽和goto
主題4:指針、數(shù)組、字符串、搜索和排序算法
主題5:鏈表,樹
主題6A:指針對指針、多維數(shù)組、堆棧和隊列
主題6B:函數(shù)指針,哈希表
主題7:使用和創(chuàng)建庫、B樹和優(yōu)先級隊列
二、作業(yè)題
問題1:
(a) C中的花括號表示什么?為什么用花括號括住函數(shù)體是有意義的?
(b)描述文字值7、“7”和“7”之間的區(qū)別。
(c)考慮語句double ans = 10.0+2.0/3.0?2.0 * 2.0;
重寫此語句,插入括號以確保在求值時ans = 11.0。
問題2:
考慮這個陳述:
雙ans = 18.0/2(2+1);
對于下面四個版本的macro squared()函數(shù),分別寫出ans的對應值。
1. #define squared(x) x*x
2. #define squared(x) (x*x)
3.#define squared(x) (x)*(x)
4. #define squared(x) ((x)*(x))
問題3:
用你最喜歡的文本編輯器和編寫課堂上描述的“你好,6.087學生”程序
編譯并執(zhí)行它。提交打印輸出或屏幕截圖
?用于編譯程序的命令
?用于執(zhí)行程序的命令(使用gdb)
?程序的輸出
問題4:
下面的代碼行按適當?shù)捻樞蚺帕泻?,將輸出簡單的消息“All”
你們的基地是屬于我們的?!?/p>
1. return 0;
2. const char msg[] = MSG1;
3. }
4. #define MSG1 "All your base are belong to us!"
5. int main(void) {
6. #include
7. puts(msg);
問題5:
編寫邏輯表達式,測試給定的字符變量c是否為:
? lower case letter
? upper case letter
? digit
? white space (includes space,tab,new line)
問題6:
使用優(yōu)先級規(guī)則,計算以下表達式并確定變量表的值(不運行代碼)。也可以使用括號重寫它們,使順序顯式。
?假設(x=0xFF33,MASK=0xFF00)。表達式:c=x & MASK ==0;
?假設(x=10,y=2,z=2;)。表達式:z=y=x++ + ++y * 2;
?假設(x=10,y=4,z=1;)。表達式:y>>= x&0x2 && z
以上是全部內(nèi)容分享,希望對大家有用。學業(yè)有難題,歡迎大家咨詢考而思C語言課程輔導老師,獲取一對一在線課程補習以及作業(yè)講解!
圖片歸版權(quán)方所有,頁面圖片僅供展示。如有侵權(quán),請聯(lián)系我們刪除。凡來源標注“考而思”均為考而思原創(chuàng)文章,版權(quán)均屬考而思教育所以,任何媒體、網(wǎng)站或個人不得轉(zhuǎn)載,否則追究法律責任。
kaoersi03