1樓:大頭
1.為什麼要在定義陣列後就直接輸出printf("array a: \n");這個有什麼意義;
答:意義就是提示下面輸出的資料是陣列 a 的資料
迴圈執行printf("%5d",a[i][j]); 將陣列 a 的全部內容輸出。
2.程式中有兩處for語句巢狀迴圈,為什麼會有兩次?還有就是第一處的for語句巢狀迴圈得出的值,輸到哪兒?第二處的for語句巢狀是不是和第一次都作用一樣,得出都值也一樣?
答:第一個for迴圈是用來輸出陣列 a 的資料;第二個for迴圈是用來輸出
陣列 b 的資料。資料輸出到 dos 介面(就是那個黑色的視窗),
的出的值是不一樣的,b[0][0] == a[0][0],
b[1][0] == a[0][1]
b[2][0] == a[0][2]
b[0][1] == a[1][0]
b[1][1] == a[1][0]
b[2][1] == a[1][0]
仔細觀察,就可以看出不一樣。
3.程式中b[j][i]=a[i][j];語句是把a[i][j]賦給b[j][i]是把j和i對調嗎?還是其他的意思?
,答:程式中b[j][i]=a[i][j];語句是把a[i][j]賦給b[j][i],但不是把 i
和j 對調。
有不明白的地方,可以繼續問,希望對你能有所幫助。c 語言是非常有用的一門語言。
問題補充:
for(k=2;k<6;k++,k++)
這是一個雙重迴圈,當外部迴圈k==2時,k<6 成立,所以執行一次迴圈體後,輸出 s = 15;然後執行 k++,k++;經過兩次自加,這樣k = 4,k < 6成立,所以在執行迴圈體,輸出 k = 10;然後執行k++,k++;這樣k =6,k <6 不成立,推出迴圈。結束
2樓:餘味優秀
1.這句話本身沒什麼含義,只是起提示作用,告訴你下面要輸出的陣列是a
最終輸出結果是
array a:
1 2 3
4 5 6
array b:
1 42 5
3 6如果沒有printf("array a: \n");printf("%5d",b[i][j]);就是下面這樣子,很不直觀.
1 2 3
4 5 6
1 42 5
3 62.本文有4個for語句,前兩個是通過巢狀一一賦值,把a的值轉置賦給b。後兩個是通過兩個for語句將b的值一一輸出.
就前兩個for語句舉例,順序是i=0,j=0、1、2;i=1,j=0、1、2.
3.程式中b[j][i]=a[i][j];意思是通過i,j對調以及for語句對i.j值的迴圈,將a中各值一次轉置賦給b。應該沒有別的意思了。
寫明瞭是
b[0][0]=a[0][0];b[1][0]=a[0][1];b[2][0]=a[0][2];
b[0][1]=a[1][0];b[1][1]=a[1][1];b[2][1]=a[1][2];
這樣就可以捨去前兩個for語句了。
不過還是建議學好for,挺好用的。
3樓:初心必達科技
第一個:
直接輸出array a;這個沒什麼重要意義,只是為了顯示的完整性,方便閱讀者。這裡的a指的不是上面定義的陣列a.
第二個:2個for迴圈是巢狀的,運算順序是先執行第一個for迴圈,然後符合第一個for中的條件之後就去執行第二個for迴圈,當第二個for迴圈執行到不滿足j<=2的時候再回到第一個for迴圈。也就是說第一個for執行一次,第二個for要執行3次。
第一處處for語句巢狀迴圈得出的值,輸到顯示屏,本質上講,只是把a陣列的元素輸出而已,唯一區別就是最後將陣列a和b中的元素對調了,printf("array b: \n");這個以下的for迴圈輸出的雖然表面上是b陣列的元素,實際上卻是a陣列中的元素,因為在上面的for語句中已經將a陣列中的元素賦給b陣列了。
第3個問題:程式中b[j][i]=a[i][j]; 是指把他們不同位置的元素進行對調,比如b[j][i]這個位置儲存的是5,a[i][j]這個位置儲存的是8,則這樣對調之後a,b陣列中的b[j][i]和a[i][j]位置儲存的就都是同一個元素了。既b陣列中的元素都被a陣列中的元素給取代了,但是順序不一樣。
4樓:匿名使用者
1、c語言缺乏圖形介面,所以文字提示很重要(這是你人性化設計的標誌),這個僅僅只是提示下面要顯示的是陣列a: printf("array b: \n");的作用同理;
2、由於是二維陣列,就像矩陣橫豎都要考慮,就像找一個座位一樣,先找在第幾排再找第幾列就找到那個位置了,至於是先找排還是先找列,那要看引數的設定;printf("%5d",a[i][j]);輸出到dos介面啦?!b[j][i]=a[i][j];然後把值依個賦給b陣列這樣b是a的轉置矩陣;大體上一樣,第一次輸出陣列a的所有值,第二次輸出矩陣b
其實這些你把程式執行一下就知道了,實踐是最重要的;
3、是把a矩陣的第i行第j列的值放到b矩陣的第j行第i列;i與j只表示位置關係,他們之間並沒有交換;
幫忙找個c語言程式,重謝,幫忙找個C語言程式,重謝!
請編寫程式,定義一個顧客的結構體型別,其成員為 編號 姓名 商品數量,商品總額 輸入十名顧客的資訊到結構體陣列中,最後統計這十名中購買商品總額最大的顧客,將他的資訊列印輸出。並按照下列各式把資訊存入到customer.txt中 0001 kate 5 822.8 0002 jame 7 2761.9...
求高手幫忙寫個c語言寫的51程式
科技藝術生活 為什麼要用24c02儲存,要求上電回零,即初始化了,那麼24c02不就沒有用了麼,再說了,許多微控制器自帶eeprom 你這用stc15f104 8腳 微控制器就可以了, 超級 在梯形圖中,將y0和y1的常閉觸點分別與對方的線圈串聯,可以保證它們不會同時為on,因此km1和km2的線圈...
高手進來看看C語言c,求高手解釋下 C語言 C 語言 C 語言的區別?及年代背景?
我修改成c語言的了,並且能編譯通過了,可以執行了只是,執行的結果,對不對,我沒有驗證。include include void data double a,int x,int m,int n break case 25 演算法同上 for y i 2 y i 2 y break a i j sum ...