-
int a=3,b=;
第一 IFIF(a>b) a=b; c=a;
因為此時a=3,b=5,if條件不成立,執行的不是a=b,而是c=a,即c的值發生變化。
此時,c=3,b=5,a=3,繼續執行第二個iff(c!)。=a) c=b;
因為此時 c=3,b=5,a=3,,所以 if 條件不成立,c=b 不執行,所以 ah=3,b=5,c=3,輸出結果為 3,5,3
if(c!=a) 是確定 c 是否不等於 a,!=不等於運算子,如果這樣寫,我想你會明白的。
int a=3,b=5;c=7;
if(a>b)
a=b;else
c=a;if(c!=a) c=b;
printf("%d,%d,%d",a,b,c);
-
如果你寫得工整,它是這樣的:
int a = 3, b = 5, c = 7;
if(a>b) 確定 a 是否大於 b(a 現在不大於 b 並且不執行括號) a = b; 如果它大於,則將 b 的值分配給 a; ====> 這句話不執行。
c = a;a 的值被賦值給 c,(如果這句話沒有寫在 if 模組中,無論如何都會執行); ====> 執行 c=a=3;
if(c != 乙個)確定 c 是否不等於 a(!= 不等於符號,等於返回零,等於返回 1);
c = b;b被分配給c; ====> 這句話不執行。
-
在第乙個 if 語句之後,將 a=b; c=a;戴大括號很容易理解。 樓下是對的。
-
if else 語句是允許執行選擇的選擇結構。 所謂選擇性執行,就是“有的**可能執行,有的**有選擇地執行”。 特徵:
如果表示式為 true,則執行以下語句; 如果表示式為 false,則不執行以下語句。
if-else 語句的執行過程:首先,確定關鍵字 if 後括號內條件表示式的值,如果表示式的值在邏輯上為 true(非 0),則執行 if 主體(語句 A),但不執行 else 主體(語句 B),然後在 if-else 之後繼續執行其他語句; 否則,如果表示式的值在邏輯上為 false (0),則不會執行 if 正文(語句 A),但會執行 else 正文(語句 B),然後執行 if-else 之後的其他語句。
if 語句的執行過程:首先確定關鍵字 if 後面括號內條件表示式的值,如果表示式的值在邏輯上為 true(不是 0),則執行 if 正文,然後在 if 正文後執行其他語句; 否則,如果表示式的值在邏輯上為 false (0),則不執行 IF 正文,並執行 IF 正文之後的其他語句。
-
C 語言提供了三種形式的 if 語句:
1. if(表示式)語句。
例如:if(x>y)printf("%d",x);
在這種情況下,如果表示式為 true,則執行 printf 語句。
2. if(表示式) 語句 1 else 語句 2 例如:if(x>y)printf("%d",x);
else printf("%d",y);
此時,如果 x>y 為 true,則執行語句 printf()"%d",x),然後直接跳過 else,以及語句 printf("%d",y),去執行搖滾後的語句。
如果 x>y 不是 true 和 false,則不執行語句 printf()"%d",x),執行 printf("%d",x)。
3. If(表示式 1)語句 1
else if(表示式 2)語句 2
else if (表示式 3) 語句 3
else if(表示式 m)語句 m
else 語句 n
在本例中,哪個表示式為 true,則執行 if 之後的語句。 如果表示式 3 為 true,則執行語句 3。
在每個語句中,可以有多個語句,但它們必須是大括號。
示例:if(x>y)。
-
then 不是 C 關鍵字。
在某些語言中,需要 then 來標記條件的結束,但 C 中的 if 語句在括號中,並且不需要這個 THEN 來標記條件的結束,所以沒有更多。
例如,如果 $a==3 那麼
a = $a+1
這樣做的目的是說明條件到此結束,並且位於 c 中。
如果 (a == 3) 這裡有括號,則不需要標識 a = a + 1;
-
在 c 中沒有 then 這樣的東西。 這是語法上的差異。 不同的程式語言有不同的語法。
只有 if-else
-
c 語言中沒有 if then
如果那樣的話,那就是別的東西了。 實際上,不要太糾結於語言的形式。
如果我得到乙個巨集定義:
#define if if(
#define then )
#define elif }else if(#define fi }
我可以這樣編寫程式:
if a then
printf("巴拉巴拉。 ");
elseprintf("巴拉巴拉。 ");
fi 但 c 沒有 if then~
-
鍵嚮導中有 if then (if, then),但是如果 c,那麼就寫不出來了,只要滿足 if 的條件,裡面的 ** 就會被執行!
-
您好,很高興您的問題。
在C語言中,if語句表示一種選擇結構,即在滿足某個條件時執行相應的語句。 其原理是,它始終與它前面的 if 語句單獨使用,與它最接近,並且尚未與其他語句匹配。 因此,根據上述規則,如果發現else與第二個if匹配,那麼第乙個if是一般條件,那麼else表示x=0的情況。
它的三個並行 if 語句可以求解 x=0 和 y=1;x>0,y=1;x<0,y=-1。 如果您必須更改程式,只需將第二個 if 語句和 y=1 括在大括號中即可。
-
答:排版非常重要你重新格式化**,這更有利於你對程式的理解。 如下圖所示。
裡面很明顯else它與第二個if當 y 小於 0 時,它根本不會輸入 if 語句,所以 y 的輸出仍然是 0。
希望對您有所幫助
-
這應該是如果....如果希望 else 與第乙個 if 配對,則應將第二個 if 語句放在第乙個 if 語句之後的括號內。 一般來說,如果語句,這些大括號最好不要省略,稍有不慎就很容易導致錯誤,而且這種錯誤很難發現。
-
因為你的 else 與 if(x>0) 配對,所以你的第二個 if 巢狀在第乙個 if 中,當你輸入 x 0 時,整個判斷無法進入,所以 y 保持初始值 0 並輸出。
-
** 寫為等於零。
看姿勢,應該是寫乙個程式,判斷x加減,正輸出1,負輸出-1,0輸出0,上**。
#include
int main()
if(x>0)}else
typedef void *(pfunction )(void * pf, void *parg );
定義函式型別。 該型別稱為 pfunction,該型別的函式有兩個 void * 指標引數 pf 和 parg,返回值型別為 void *x pointer。 >>>More
從**本身和執行情況來看,可執行程式的內容與貼上的**不匹配(可能是修改後沒有重新編譯,而修改前的**執行,否則不會**現在出現可以編譯傳遞的錯誤,例如第二行末尾有更多的“op”, 和“現有1人捐款無產出”),修改建議如圖所示: