看板 C_and_CPP 關於我們 聯絡資訊
scnaf 回傳值是 "引數成功 match 之數目" ex: int a1, a2, a3; int ret = scanf("%d%d%d", &a1, &a2, &a3); 如果使用者輸入 10 22 12 回傳值 ret = 3 如果值用者輸入 10 22 ss 最後一個引數沒有 match 到 回傳值 ret = 2 以您的例子 while(scanf("%d", &num) {....} 事實上可以看成 while(scanf("%d", &nun)!=0) {....} 或是 while(scanf("%d", &num)==1) {....} 是一樣的意思, 只要輸入不是正常的整數, 這個迴圈就會停下來 參考.. ※ 引述《gsrr (下象棋)》之銘言: : while (scanf("%d",&num)) : { : ... : } : 像上述狀況,以scanf進行輸入時, : 若輸入 22 33 44,時會依序讀入22,33,44 : 請問一下此時如何判斷說讀取時為輸入的最後一個數字. : 謝謝! -- 我期待 我等待 肩狹骨上的翅膀早些長出來 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 180.177.77.80
gsrr:謝謝大大,那如果我不知道要user一次要輸入幾組, 05/09 21:59
gsrr:有辦法在最後一組時,判斷這是輸入的最後一組數字嗎? 05/09 21:59
tw00088437:你接下來要做的事情是? 05/09 22:27