C語言的趣味題目學習
哈哈遊戲來了
點網址進去可以先做做題,溫習一下
http://stevenkobes.com/ctest.html
如果都做對了,下面就沒必要讀了意義不大
-
-
-
-
-
-
-
-
-
1可查看
想要一起學習C++的可以加裙二四八八九四四三零,裙內有各種資料滿足大家,歡迎加裙
https://en.wikipedia.org/wiki/Setjmp.h
3沒複雜東西
5++b的步長實際上是3個int,也就是++b運算以後,b指向這個數組的開始,而b[1]就是, b[1][1]實際上就是8這個值也就是main函數中的a[2][1].
6兩個C語言知識點,一個是等號操作符優先順序高於逗號操作符,另一個是逗號操作符相當於運算逗號前半部後半部的表達式,然後返回後半部表達式的值。所以c等於a(先計算等號),而d等於b(逗號表達式返回b)。
7依然是2維數組相關題目,ptr為指向int [3]數組的指針,首先指向a[0],所以(*ptr)[1], (*ptr)[2]就是a[0][1], a[0][2].然後++ptr,相當於ptr指向了a[1],這時得到的是a[1][1],a[1][2],所以結果就是2,3, 5, 6。
8這裡考的是返回一個指針的問題,一般來說返回指針的函數,裡面一定有malloc之類的內存申請操作,傳入指針類型,則是對指針指向的內容做修改。如果想修改指針本身,那就要傳入指針的指針。
10函數指針的數組p勉強算是一個知識點,另外一個知識點就是第八題提到的,對於int q這樣的參數,是不會修改其內容的。而*p則可修改p指向的內容。
11這道題自己debug一下就完全明白了,主要知識點就是遞歸調用,另外前置後置自減操作的返回值問題
12對複雜的指針定義做解析,實際上K&R裡面(5.12)也有介紹該如何解讀。不熟悉的朋友可以試著練習練習標準庫中的bsearch,qsort以及signal函數。
13這道題我在http://sunxiunan.com/?p=1637 也提到過相關知識點,也就是p實際指向*(buf + 1 + 5),寫的更詭異一些就是p=5[buf +1];也是同樣結果。
14類似上題(p += sizeof(int))[-1];相當於*(p + sizeof(int) + (-1))。
15這道題也是兩個知識點,一個是可變參數函數定義以及如何實現,va_arg會把5,7依次取出來。另一個知識點是i &= i-1,實際上是計算了i二進位形式中1的個數,每次計算都會消減掉最低有效位上的1。比如7二進位表示為111。i &= i –1的計算結果依次為110,100, 000 (也就是0)。在hacker』s Delights這本書里介紹了很多類似技巧。
16隻要了解靜態局部變數的真正內涵,這道題就是小菜
想要一起學習C++的可以加裙二四八八九四四三零,裙內有各種資料滿足大家,歡迎加裙
※用C語言寫面向的對象是一種什麼樣的體驗
※給那些初學C語言的朋友,手把手教做一個簡單的人機猜數遊戲
※C語言學習之什麼是指針
TAG:C加加 |
※來做幾道文學史的題目
※最乾的乾貨!菜鳥必學史上最經典C語言的5個實例題目帶源碼詳講!
※風水學習理論考試題目 3
※題目是《剜目》
※風水學習理論考試題目 2
※選題太另類:爆笑奇葩論文題目讓你打開眼界
※妙趣橫生,趣味無窮,這些詩詞隱去題目,竟然都變成了謎語
※趣聞三則 早稻田大學今年入學考試的小論文題目 等
※最「文不對題」的古詩,題目寫的是送別,內容卻儘力描寫西湖之美
※有一種名言叫楊冪的名言,登上澳門作文題目,很多學生都不會寫!
※《百萬英雄》,歷史類文學類地理題目,下場就出這些題!
※所謂「癌症性格」是不是一個聳人聽聞的題目
※王俊凱的聯合國英文演講稿成為閱讀理解素材,配套的題目卻很獨特
※丁肇中談阿爾法磁譜儀項目:大科學項目要選對題目
※不愧是學霸做的遊戲!完成任務還要解數學題,玩家:題目都沒看懂
※從「不會做的題目放一邊」開始,用心理學教你科學應考
※搞笑漫畫:課本上的題目真的如此智障?生活中的我們其實也在做這種事!
※一篇不會起題目的文
※這是一道風霏國內的奇葩題目
※題目:油畫繪畫五要素