两个吃奶一个添下面视频_人妻第一页香蕉网_欧美xxxx少妇_妺妺窝人体色www婷婷

  • 歡迎訪問C語言網(wǎng)www.sztianhecheng.cn 比賽欄每月有獎(jiǎng)月賽!舉辦比賽聯(lián)系QQ:2045302297
  • 問題反饋、粉絲交流 QQ群327452739 藍(lán)橋杯訓(xùn)練群:113766799 申請群時(shí)請備注排名里的昵稱
  • C語言研究中心 為您提供有圖、有料、解渴的C語言專題! 歡迎討論!

C語言經(jīng)典筆試題

C語言研究中心 CTO 24920次瀏覽 6個(gè)評(píng)論

1.以下程序的結(jié)果是什么?

int i = 1;
int main()
{
        int i = i;
        return 0;
}

A: main()函數(shù)里的i是一個(gè)未定義值

B: main()函數(shù)的i為1

C: 編譯器不允許這種寫法

D: main()里i的值為0

 

解答:當(dāng)筆試者看到此代碼時(shí),可能會(huì)覺得古怪。雖然在C++中編譯是可以通過的(顯然是不合理)。當(dāng)main()函數(shù)里的i從定義開始,外部的全局變量i就已經(jīng)被屏蔽掉,所以main()函數(shù)里作為右值的i的值不會(huì)0也不會(huì)是1,與外部的i無關(guān)。而是一個(gè)未定義的符號(hào)。

答案:A

 

 

2.以下程序的輸出結(jié)果是什么?

#include<stdio.h>
int main()
{
        int arr[]={11,12,13,14,15};
        int *ptr = arr;
        *(ptr++) += 100;
        printf("%d %d\n",*ptr,*(++ptr));
        return 0;
}

A:13 13

B:112 13

C :12 12

D:12 13

解析:本題主要考察指針以及棧的概念 。ptr首先指向數(shù)組arr的第一個(gè)元素,*(ptr++) += 100之后,arr中的0號(hào)元素即a[0]變成了111,別忘了ptr也向后挪了一位即指向1號(hào)元素,此時(shí)*ptr的值為12。問題來了:printf(“%d %d\n”,*ptr,*(++ptr))的輸出結(jié)果竟然不是12 13 而是13 13 原因在于printf的兩個(gè)參數(shù)壓棧順序?yàn)閺挠抑磷?,故也先?jì)算*(++ptr),所以ptr已經(jīng)指向了arr[2],所以兩次都是13

答案:A

 

3. 以下代碼說法正確的是:

#include<stdio.h>
int main(void)
{
        char aChar;
        int aInt;
        aInt = aChar = -120;
        printf("%d\n",aInt);
        return 0;
}

A:一定輸出-120

B:一定不能輸出-120

C:可能輸出-120

D:輸出%d

 

解答:本題乍一看,-120木有問題! 再仔細(xì)一看 char類型表示的數(shù)據(jù)范圍是-128~127,也沒有溢出。應(yīng)該沒錯(cuò)咯。但本題考查的重點(diǎn)并非在此。重點(diǎn)在于aInt = aChar = -120;這句話,為什么呢?我們知道=號(hào)的意思是賦值,是從右往左運(yùn)算,那第一步會(huì)將-120賦給aChar。第二步是aChar的值給aInt。對于第一步?jīng)]有什么要說的。第二步呢就有個(gè)問題了。以32位系統(tǒng)常規(guī)平臺(tái)來看,是將8字節(jié)數(shù)據(jù)的char類型變量放到32個(gè)字節(jié)的int變量里去,那這里就存在一個(gè)問題了!沒錯(cuò),那就是大小端存儲(chǔ)導(dǎo)致的問題,即-120這個(gè)數(shù)字對應(yīng)的八個(gè)位的二進(jìn)制碼是放到int變量的高位還是低位,所以結(jié)果自然不必多說了。

答案:C

 

C語言研究中心(www.sztianhecheng.cn)

C語言網(wǎng)提供「C語言、C++、算法競賽」在線課程,全部由資深研發(fā)工程師或ACM金牌大佬親授課,更科學(xué)、全面的課程體系,以在線視頻+在線評(píng)測的學(xué)習(xí)模式學(xué)習(xí),學(xué)練同步,拒絕理論派,真正學(xué)會(huì)編程!還有獎(jiǎng)學(xué)金等增值福利等你!

C語言網(wǎng), 版權(quán)所有丨如未注明 , 均為原創(chuàng)丨本網(wǎng)站采用BY-NC-SA協(xié)議進(jìn)行授權(quán) , 轉(zhuǎn)載請注明C語言經(jīng)典筆試題!
喜歡 (87)
[jinyangH@aliyun.com]
分享 (0)
發(fā)表我的評(píng)論
取消評(píng)論
表情

Hi,您需要填寫昵稱和郵箱!

  • 昵稱 (必填)
  • 郵箱 (必填)
(6)個(gè)小伙伴在吐槽
  1. 最后一道題 int類型是4個(gè)字節(jié) 不是32個(gè)字節(jié) ,4個(gè)字節(jié)是32位。 這最基本的東西都不懂,還教別人。。。。
    aa2019-01-30 14:27 回復(fù)
    • 我發(fā)現(xiàn)這網(wǎng)站里很多錯(cuò)別字,讀是能讀通,但感覺知識(shí)變得不靠譜了
      哈哈笑2022-07-10 21:44 回復(fù)
      • 俺也發(fā)現(xiàn)了
        笑哈哈2022-09-02 18:48 回復(fù)
  2. 從沒看懂過,從理解到過,從沒學(xué)會(huì)過,基本一切都看不懂,就一辣雞
    qzx2005147@163.com2019-03-14 18:16 回復(fù)
  3. 第二題不可移植,這么寫本身就有問題,到底輸出啥取決于編譯器的行為了
    jones2019-12-31 10:46 回復(fù)
  4. “將8字節(jié)數(shù)據(jù)的char類型變量放到32個(gè)字節(jié)的int變量里去”里面應(yīng)該是8位,32位吧,而不是字節(jié)
    程序員界的菜鳥2020-04-25 13:21 回復(fù)