1樓:匿名使用者
printf(「%d\n」,(a=a+1,a+6,b+2));
,號運算子,輸出最後一個表示式即b+2的值即可
2樓:匿名使用者
printf(「%d\n」,(a=a+1,a+6,b+2))
這個是取逗號最後一個值的
3樓:匿名使用者
這樣寫法有的時候有意想不到的用處
例如x=(a=a+1,b=b+1,a+b);
這樣就等價於 x= a+b ; 前面計算出 a b的值
請讀程式: main() { int a=1,b=2; printf("%d\n",a=a+1,a+6,b+2);} 則上面程式的輸出結果是____
4樓:匿名使用者
格式字串中只有一個%d,所以只輸出第一個引數的值,它是:a=a+1。
另外可以上機試一下。
5樓:
輸出bai
:2因為=運算子的優先du級低於,(逗號)運算子,zhi所以printf("%d\n",a=a+1,a+6,b+2);等效dao於:printf("%d\n",(a=a+1),(a+6),(b+2));也就是printf多提供了回2個無用的引數
注意:不能答把a=a+1,a+6,b+2當做是一個,(逗號)表示式
6樓:匿名使用者
雖然c有個原則是在printf函式裡後面的 引數處理順序 是從右到左,但是真正列印還是列印的第一個,你把b+2換成a++,估計結果就是3了。
不要弄混了
7樓:匿名使用者
執行baiprintf("%d\n",a=a+1,a+6,b+2);這句之前,
要先du把代入的引數算出來,這
zhi時候daoa被+1,
真正專執行的時候,輸入的引數是屬printf("%d\n", 2, 8, 4);
由於輸出的只有第一個可變引數,所以是2
8樓:匿名使用者
a=a+1 肯定是2啊,後面的你又沒指定要輸出啊
除非:int a=1,b=2;
printf("%d %d %d\n",a=a+1,a+6,b+2);
用c語言中的for迴圈輸出菱形,C語言程式設計,用一個for迴圈列印菱形
include int main for a 1 a i a for b 0 b i 2 b for c a c i c printf n for j 1 j a j for d 1 d j d for e a e j e for f a 1 f j f for g 0 g j 1 g printf...
c語言程式設計,C語言程式設計
這麼簡單還用不到結構體陣列和檔案 include include static int find x unsigned int number,int x char t 0 int count 0 int i 0 if itoa number,buf,10 null return 0 for buf ...
c 程式設計,C語言程式設計
如果不符合要求 發資訊。include using namespace std int main while ch y ch y return 0 這個是我寫的,你看下可以麼,如果你覺得複雜可以去掉一些判斷n的情況的語句,有疑問給我發訊息。include using namespace std vo...