在學習c語言程式,為什麼程式設計時printf括號裡是d

時間 2022-01-30 07:06:03

1樓:

空格、回車是輸入分隔符,連續幾個分隔符,按乙個考慮。

在你的輸入「45 56」中,先讀入45,遇到空格,表示第乙個數結束,賦予a,然後會忽略其他字元,等待格式中的',',因此後面的56忽略了。最後遇到回車,也沒有等到『,』,輸入已經結束。

建議輸入格式中,不要使用任何分隔符,在輸入時使用系統預設分隔符,如此可以防止輸入錯誤。

如:scanf("%d%d",&a,&b);

此時,45 56的輸入,就會得到正確結果。

或者:45

56也行。

2樓:匿名使用者

其實它報錯了,只是你這樣的api使用方式沒有處理罷了。你除錯一下就知道了 b的值其實是零,並沒有拿到56.

空格的作用只是為了讓它知道解析數字結束,不然不就成了4556了。

3樓:匿名使用者

你格式是「%d,%d」 而你輸入的時候確實「45 56」。輸入的時候改為「45 , 56」就沒問題了。

輸入時打空格沒什麼含義只不過是為了隔離數字。

至於它沒有報錯,是因為你忽略了scanf的返回值

c語言程式設計裡printf("%d\n",(x,y));是什麼意思

4樓:吳永修吳卿

確定寫的正確嗎?

c語言程式設計裡printf是輸出指令,%d是按照十進位制整數形式輸出,後面的\n表示換行,但是後面的(x,y)有問題的,你再檢查下

5樓:隱素花幹雀

(x,y)括號中是乙個逗號表示式,逗號表示式的值是其最後一部分的值

解釋c語言程式,解釋C語言程式

include 包含標頭檔案stdio.h void dec2hex int n,char str 函式dec2hex,沒有返回值,帶乙個整型引數和乙個字串陣列引數 while n 0 n大於0時繼續執行do.while str m 0 把字元 0 字串的結束字元 賦給str m for i 0,j...

c語言程式疑問,C語言程式疑問?

include include include void reverse char p void user itoa int ndigital,char pch ptmp 0 reverse pch void main system pause 求採納為滿意回答。讀取掉緩衝區中的回車符,這樣你下次輸...

C語言程式問題,程式如下,c語言程式,詳細問題如下

1原型 extern int strcmp const char s1,const char s2 所在標頭檔案 string.h 功能 比較字串s1和s2。一般形式 strcmp 字串1,字串2 說明 當s1s2時,返回正數 注意不是1 即 兩個字串自左向右逐個字元相比 按ascii值大小相比較 ...

c語言程式

12.前若是0則不執行後面的 輸出12 即輸出的時候k值為1,n值為2 理由是,while括號裡面的表示式,意義是邏輯與的短路表示式。k 為後增量 k 0時,進行了邏輯運算,k 0所以邏輯值為假,造成短路,即後面的n 2不會被執行,直接是while迴圈退出。此時k 後增量已經使k值變為1.這就是後面...

C語言程式執行過程,C語言源程式到執行程式經過哪幾個步驟

include 載入stdio.h函式包到程式中 void main 函式的開始標誌 int i,j 宣告整型變數i,j,並分配相應大小的記憶體空間 for i 1 i 4 i i 1 初始化i的值為1,進入迴圈,當該次迴圈結束,i i 1 相當於i自增 當然返回 i 4 判斷是否條件成立,成立,則...