看板 C_and_CPP 關於我們 聯絡資訊
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 ) ( 未必需要依照此格式,文章條理清楚即可 ) 遇到的問題: (題意請描述清楚) debugger沒問題,但run了以後她說嚴重錯誤 希望得到的正確結果: 程式能夠正常執行 程式跑出來的錯誤結果: 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux) Windows Visual Studio 2010RC 跟 Windows Visual C++ 2008 Express 有問題的code: (請善用置底文標色功能) 補充說明: #include "stdafx.h" #include "stdlib.h" #include "math.h" int _tmain(int argc, _TCHAR* argv[]) { unsigned long int number = 2; unsigned long int test = 2; double max; printf("請輸入一個大於1的數,我們將為你輸出此數以下的所有質數:"); scanf_s("%.3f", &max); if(max <= 1 || fmod(max,1.00) != 0) printf("你輸的數字與條件不符\n"); else while(max >= number) { while(number % test != 0&&number >= test) test = test + 1; if(test == number) printf("%u ", number); test = 2; number = number + 1; } system("pause"); return 0; } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.117.39.32
ducksteven:use debugger 03/13 15:15
ducksteven:囧 漏看 你試著清除專案(build)再重新build執行檔 03/13 15:16
QQ29:scanf 03/13 15:25
fireslayer:scanf_s是他推薦的新語法耶,以前都沒有問題= = 03/13 15:35
QQ29:我也不知道 感覺妳這console程式卻怎麼感覺在寫win32@@ 03/13 15:36
fireslayer:是WIN32沒錯阿 03/13 16:18
stonehomelaa:後面加個_s的是比較安全的版本 03/13 16:31
fireslayer:我找到問題了謝謝大家,是.2f跟lf的問題 03/13 16:44