一道C語言選擇題以下正確的程式段是 - 極客派

文章推薦指數: 80 %
投票人數:10人

c語言的一道選擇題,一道C語言選擇題以下正確的程式段是,1樓於尋聖梅花c語句以分號來表示語句的結束,注意到第2個for迴圈後面的分號了嗎? c語言的一道選擇題,一道C語言選擇題以下正確的程式段是 2022-03-1306:20:59字數4203閱讀9230 1樓:於尋聖梅花 c語句以分號來表示語句的結束,注意到第2個for迴圈後面的分號了嗎?那表示for迴圈到那裡就結束了,後面的printf語句並不是for迴圈的1部分,所以只是輸出1個星號。

2樓:利錦花赩 因為print這句前有個分號,表示空語句,也就是說,迴圈體內的句子是空,迴圈完之後,又執行了一個列印操作。

3樓:郝誼鬱燕子 有點看不清啊,不過應該是形參和實參的問題,實參傳入給形參,形參變動不會產生實參變動 4樓:庫葛禰** for(i=0;i<4;i++,j++) for(k=1;k<3;k++) printf("*"); 如果是這樣 就選a了 因為for(k=1;k<3;k++)後有個分號,所以printf語句未參與迴圈 所以只做了一次 選d正解 5樓:在尋找荊棘 這裡a和d的執行結果是一樣的,但是題目說12.234是雙精度型別,輸出型別要一致,所以只能選a 6樓:墨掣賞曉靈 因為,你定義的變數和你要輸出的東西沒有關係,printf是c語言中的輸出符,他只會輸出引號(“”)裡面的內容! 7樓:成珺頓涵山 從a[3]開始取,所以前三個不變你應該明白吧? (*q)++指的事指標q所指字元的ascii碼增加一個,然後q++指的是對下一個字元進行操作,所以從第4個字元起每個字元都向後一個,即g->h,r->s,a->b,m->n 因為是指標操作,所以字串a被改變,輸出答案為a 8樓:原子報告 ad項的是‘f’表示單精度,而a項‘lf’表示雙精度 9樓:great柯柯 %f一般對應單精度型別float %lf一般對應雙精度型別double。

10樓:真三國無雙ol哇 a使輸出double::lfd使輸出的float::f你看仔細了 一道c語言選擇題:以下正確的程式段是:() 11樓:百度網友 a裡面str本來就是個指向字串的指標。

d裡面p[2]表示字串的第三個字元,加&才表示地址。

12樓:匿名使用者 a.charstr[20];scanf("%s",&str); b.char*p;scanf("%s",p); c.charstr[20];scanf("%s",&str[2]); d.charstr[20],*p=str;scanf("%s",p[2]); a:str是陣列的名字,它單獨出現時候代表的是該陣列的首地址, &用在變數前代表取其地址,對str這個地址取地址,不是程式想要的吧! b:p做為一個指標,沒有初始化.記住,指標一定要初始化後才能使用! c:str[2]的意思其實是*(str+2), 所以&str[2]其實就是&*(str+2),也就是str+2,還是個地址,所以是正確的. d.charstr[20],*p=str;scanf("%s",p[2]); :p[2]代表*(p+2),代表第三個字元了 13樓:樓淳靜 a.charstr[20];scanf("%s",str); d.charstr[20],*p=str;scanf("%s",&p[2]); 14樓:匿名使用者 a裡面str前不能加& d裡面要加& 15樓:雷 b應該也是對的啊!! 為什麼b不對!! b是對的!! 其他同意樓上的!! c語言一道選擇題 c語言一道選擇題求解釋 16樓:戰譽宇綸 a 先執行a 這時a 這時a 17樓:時刻準備著 正確答案是11,11,11,12,12,20,20,20。

int*px=x就是px的指標指向陣列x的首元素。

第一行的兩個printf,第一個是先引用指標px,既此時*px為10;相當於++(*px);++是自加運算,與*px++區別就是,它在該表示式執行前就進行了自加。

第二個結果為11,是因為陣列x中的10已經變為11了。

第二行原理同上。

第三行第一個為12是px先進行地址加1;既指向陣列x中的第二個元素20,但在此表示式不生效,所以值還是陣列x的第一個元素。

*與++運算同級的,所以要注意運算子前後順序的。

18樓:百度網友 孩子,這題到底是個啥意思?是問輸出的結果是什麼嗎? 求助關於c語言一道選擇題! 19樓:匿名使用者 解析有問題。

正確的解析應該是: dowhile(條件表示式2); 條件表示式2成立次數為n2,則迴圈體b執行次數為n2+1.因為條件表示式2成立就要執行一次,還要加上進入迴圈時執行的那一次。

而對於while(條件表示式1) 迴圈體a; 條件表示式1成立次數為n1,則迴圈體a執行次數為n1。

基於上述分析 (1)dowhile(條件表示式2); 迴圈體a執行次數為n1*(n2+1)=n1*n2+n1(2)while(條件表示式1) while(條件表示式2); }迴圈體b執行次數為(n2+1)*n1=n1*n2+n1所以迴圈體a與迴圈體b的執行次數相同。

解析中討論n1是否大於n2沒有意義。

需要注意的應當是,n2是否為0,因為do迴圈是至少要執行一次的。

20樓:也許等直到或許 首先你要分清結構,第一個是do.....while迴圈中在do中套了一個while迴圈,然後接下來又是一個while迴圈,其中在while循序中有套了一個do....while迴圈。

其次,你要分清出do....while和while迴圈的區別,do.....while是不判斷就先執行一次,while迴圈時先判斷再執行。

接下來,看題。

首先執行do,..,但是當執行while(表示式1)時就要判斷,如果滿足條件才執行迴圈體a,否則不執行,其實這個和下面那個while迴圈先判斷後執行就達到了同樣的效果。

所以迴圈體a和迴圈體b執行執行次數相同。

希望對你有幫助。

我沒有看解析,自己的理解。

c語言一道簡單的選擇題 21樓:封詩喬朝雨 我認為應該想選a。

++3=4,這個可以寫個小程式測試一下。

b5/6結果是int型的,c"a"和“a”的asicⅱ碼值不同d和b差不多。

好久不學c了,有點忘 22樓:象子惠甄易 選a,++3是運算前自增,所以++3=4,b中5/6=0,因為5,6都是int型別的,5.0,6.0都是double型別的所以5. 0/6.0!=0,c中'a'=065,'a‘=097,所以不一樣,d中5/6=0,而5. 0/6!=0因為5.0是double,所以最後結果也是double 23樓:隆姣集依楠 都是錯的。

a ++3這個表達示就不成立。

因為++不能運用常數。

24樓:夕昌毛藍 的確是a,++ 運算子是先加1後然後進行比較,後面的有小數點的就是浮點型了,別用數學觀點去看,認為可以約去,a和a的asci碼不同 25樓:匿名使用者 b是對的,a明顯是錯的,c是讀出並不是記錄,d和c差不多,也是錯的 26樓:匿名使用者 a是錯的吧 bcd都對的。



不要解釋。







相關推薦 c語言的一道選擇題,一道C語言選擇題以下正確的程式段是 must可以用於過去時的句子中嗎 飛機上可以帶煙嗎,飛機上可以帶自拍杆嗎 相關推薦 c語言的一道選擇題,一道C語言選擇題以下正確的程式段是 must可以用於過去時的句子中嗎 飛機上可以帶煙嗎,飛機上可以帶自拍杆嗎 相關閱讀 c語言的一道選擇題,一道C語言選擇題以下正確的程式段是 must可以用於過去時的句子中嗎 飛機上可以帶煙嗎,飛機上可以帶自拍杆嗎 topic 社會 教育 文化 健康 娛樂 科技 心理 時尚 美食 數碼 家居 汽車 財經 遊戲 旅遊 育兒 科學 收藏 寵物 職場 歷史 三農 體育 動漫 國際 軍事 電影 知識 其它



請為這篇文章評分?