計(jì)算機(jī)國二C選擇錯(cuò)題筆記(一)
1 二進(jìn)制按位異或與位移運(yùn)算符
>>a為把一個(gè)二進(jìn)制數(shù)向左位移a個(gè)單位 如二進(jìn)制數(shù) 10向右位移一個(gè)單位變成1 <<為向左位移
2.else只和離他最近的if配對 多個(gè)if語句如果第一個(gè)if語句沒有else是攔不住的 執(zhí)行完后還會進(jìn)入第二個(gè)if語句
這一頁筆記的下方 3區(qū)分局部變量和全局變量 實(shí)參和形參 不用引用和指針是沒法用函數(shù)形參與實(shí)參結(jié)合改實(shí)參的 局部變量生命周期只在所定義在函數(shù)內(nèi)部
這題變得是形參n不是實(shí)際參數(shù)a 只是把實(shí)際參數(shù)a的值拷貝給形式參數(shù)n而已 a的值本身沒有變相當(dāng)于a的分身進(jìn)去了函數(shù) a本體一直沒變始終都是1
這題數(shù)組也是同理看似在交換實(shí)際由于最后打印的是實(shí)際參數(shù)對應(yīng)的數(shù)字C等于啥都沒變 答案還是 123567890 4數(shù)組名就是指針指向首地址
c是單個(gè)字符 s是字符串注意打印格式 5 C語言求素?cái)?shù)的函數(shù)(return具有立即結(jié)束函數(shù)下面所有語句的功能)
這一題很明顯a選項(xiàng)是對的 如果檢驗(yàn)到一個(gè)2到a/2的數(shù)可以把a(bǔ)整除 那么立刻排除a是素?cái)?shù)的可能返回0結(jié)束循環(huán)驗(yàn)證過程 我們接下來講一下為何C選項(xiàng)不對 C選項(xiàng)和A是十分相似的 我們代入a=9試一下 顯然我們知道9不是素?cái)?shù) 但是帶入a=9 if判斷條件9/2余數(shù)是不為0的由于沒有return 所以進(jìn)入else 滿足else的條件 所以return1循環(huán)結(jié)束了 1代表是素?cái)?shù) 但是9明顯不是 實(shí)際上C這里else多余了 導(dǎo)致循環(huán)只能驗(yàn)證第一個(gè)i的值就會結(jié)束 7程序員內(nèi)部的邏輯測試為白盒測試