當前位置:首頁 » 編程語言 » c語言題目的解析
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言題目的解析

發布時間: 2023-08-29 20:10:52

1. 問個c語言的小題,解析,謝謝

您好,很高興回答您的問題。
在c語言中,有一些本程序設計語言的法則,比如說整數除以整數得到的結果就是整數,所以10/3的結果就是3,不會是3.333,而且輸出的數據類型也是整數類型,那麼輸出的最後結果就是3,那麼結果很明顯就是D。

2. c語言問題,請給出詳細的解析,謝謝

main()
{
char a[5][10]={"one","two","three","four","five"};
int i,j;
char t;
for(i=0;i<4;i++) //當i = 0;j = 1時 a[0][0]為o, a[1][0]為t,
for(j=i+1;j<5;j++)
if(a[i][0]>a[j][0]) //單詞首字母排序 小的向前移動
{
t=a[i][0];
a[i][0]=a[j][0];
a[j][0]=t;
}
puts(a[1]);
}
第一次j交換結果:
{"fne","two","three","oour","five"};
第二次交換結果:
{"fne","fwo","three","tour","oive"};
第三次交換結果:
{"fne","fwo","ohree","tour","tive"};
第四次交換結果:
{"fne","fwo","ohree","tour","tive"};

結果a[1] 為fwo

3. c語言問題求解

  1. 答案

    ①x>=0 ②x < amin

  2. 為什麼x同時賦給amin和amax?

    並不是同時賦給amin和amax,每次只能執行一個if分支。對於每一次循環只能是要麼執行amax=x,要麼執行amin=x。只不過是一個while循環判斷輸入的這個數字是不是最大值或者最小值而已,這樣一次循環辦能兩個事情,方便。不可能出現一個數既比最大值要大還比最小值最小。不明白可以往下看。

  3. 解析

    這個題讓找出所輸入的一組數據中的最大值和最小值。這個題的思路是使用了打擂台演算法。打擂台演算法就是可以解決最大值和最小值問題。演算法思路:默認設置所輸入的第一個數字就是最大值。其後,對於每次輸入的數字都和最大值進行比較,如果說當前值都比最大值都大了,那麼這個值就新的最大值。最小值也一樣:設置第一個數為最小值,對其後的每一個數字都和這個默認最小值進行比較,如果當前值都比最小值都還小了,那麼這個值就是新的最小值。所以會有這兩條語句:

  4. if(x>amax)amax=x;
    if(x<amin)amin=x;
    上面就是比較語句,對於所輸入的數值,和amax最大值比較,如果比最大值要大,就把當前值x賦予給amax,此時最大值被更新了。第二如果x比最小值都要小,就把當前x賦予給amin,此時最小值被更新了。所以這里並不是說x同時賦給了amax和amin,這個兩個if語句每次循環只能走一個。如果還不明白自己可以拿筆拿紙畫一畫,一畫就明白。

4. C語言選擇題,求詳解

應該選B。

程序結果:

解析:

  1. *p 表示p是一個儲存地址的變數

  2. 在這個程序中當運行完p=a;時,*p為"1",*p++也為"1"

  3. *p++和*(p++)相同

  4. printf的運行順序是從左到右

  5. *p++是把*p存儲的地址+1,而p的存儲地址是數組的第一個,所以相當於把p的指針往後移一位,也就是說把p指向的數組的位置往後移一位。所以就是321

5. 一道c語言選擇題需要詳細解析

第一個式子:a + b = 8 , a - b = 2 ,前者!= 後者,正確,所以為真,輸出1
第二個式子:先算括弧里的, y -= 6.1 = 0.4 , x <= 0.4,錯誤,所以為假,輸出0
答案選:A