有以下程式,有以下程式 include int abc int u,int v main int a 24,b 16,c c abc a,b printf d n ,c

2021-06-25 15:03:45 字數 1903 閱讀 9530

1樓:風若遠去何人留

這個是輾轉相除法 求最大公約數的, 24和16的最大公約數就是8具體過程

a=24 b=16

於是函式abc中

u=24 v=16

while(v)

第一次迴圈 w=24%16=8 u=v=16 v=w=8第二次迴圈 w=16%8=0 u=v=8 v=w=0第三次 判斷v為0, 退出迴圈

返回u值為8

2樓:匿名使用者

首先:u=24, v=16;

w=24%16=8;u=16;v=8;本次迴圈結束。while(8)繼續第二次

w=16%8=8;u=8;v=8;while(8)繼續第三次w=8%8=0;u=8;v=0;本次結束

while(0)不執行while語句:

執行return u(u=8)。你這個小函式是求最大公約數的吧。

3樓:匿名使用者

自己一步步慢慢算。

第一次迴圈:

w = 24 % 16 = 8

u = v ->16

v= w -> 8

第二次迴圈(u 16, v 8)

w = 16 % 8 = 0

u = 8

v = 0

這個時候迴圈中止,返回值是u,就是8

有以下程式 #include main() int a=1,b=2,c=0,d=4; if{(a=2)||(b=1)}c=2;

4樓:匿名使用者

#include

main()

if((c==3)||(d==-1))如果c==3或者d==-1有一個成立,則執行if語句;如果兩個都不成立,則不執行

}你覺得你程式抄寫對了嗎?我覺得程式你抄寫漏了喲。a=2是賦值,而不是比較,我估計應該是a==2.如果是由兩個等號,請看我的註釋。輸出為 1,2,0,4.

5樓:我是羊指甲

這程式能執行嗎。。。。。

以下與 int *q[5]; 等價的定義語句是 (a) int q[5] ; (b) int *q ; (c) int *(q[5]) ; (d) int (*q)[5] ;

6樓:噓

int* q[5];是一個存放指標

的陣列(通常叫指標陣列)

a是一個存放int型陣列;

b是一個int型指標;

c是一個存放指標的陣列;

d一個指向指標陣列的指標,是一個變數,而不是陣列。

故選c。

陣列指標是指向陣列地址的指標,其本質為指標;指標陣列是陣列元素為指標的陣列(例如 int *p[3],定義了p[0],p[1],p[2]三個指標),其本質為陣列。陣列指標的使用在某些情況下與指標陣列很相似,要注意區別。

7樓:倒黴熊

cab顯然不對,這個沒有什麼好解釋的。

int *q[5] 表示五個元素都是int 型別的指標而 int (*q)[5] 表示每個元素都是指向一個擁有5個int元素的指標

所以d不對

c只是換了一種寫法而已。

c語言問題#include int main() { int a,b,c;

8樓:匿名使用者

因為c你定義的是int 列印是用的浮點型別

9樓:匿名使用者

int a,b,c;

改為float a,b,c;

10樓:匿名使用者

可以截個 執行圖看看? 輸入跟列印,

11樓:

%f 換成 %d

有以下程式includestdiohmain

include main if c 3 d 1 如果c 3或者d 1有一個成立,則執行if語句 如果兩個都不成立,則不執行 你覺得你程式抄寫對了嗎?我覺得程式你抄寫漏了喲。a 2是賦值,而不是比較,我估計應該是a 2.如果是由兩個等號,請看我的註釋。輸出為 1,2,0,4.這程式能執行嗎。有以下程式...

有以下程式mianint m 0256,n 256 printfo o n ,mn,n程式執行後的輸出結果是

m 0256 0 開始的數,其它 數字為0到7,是 8 進位制數 o 是 按 8 進位制數 格式 輸出。所以 printf o o n m,n 不是 mn,n,應是 m,n m 輸出 256 n 256 這裡256是10進位制數。o 是 按 8 進位制數 格式 輸出,10進位制 256 要轉 8 進...

71以下程式的執行結果是,71以下程式的執行結果是

n 的初始字元為 c 由於 switch 語句中是 switch n 故先執行完 switch 語句之後,n 的值才增加 1,即 n 的值為 d 因此,該程式的輸出結果應該為 pass 72.以下程式的執行結果是 這到題選d,因為字元優先順序,先執行比較語句,才執行 執行了2次 所以從5變7 以下程...