開啟自己博客園的第一篇章
我現在報了校外的比特編程培訓班,開始從c語言學起,盡管我曾經的編程水準僅僅停留在本科的c語言學習課堂,但我相信跟著比特老師們的學習和我在私下用功的敲代碼,我也能成為一個程序員大佬。
今天整理了一下近兩天用vs2013敲代碼碰到的一個問題
關於scanf小括號中加不加\n的區別
例程序如下所示:
//int main(){
// int coding = 0;
// printf("你會去敲代碼嗎?(選擇1 or 0):>");
// scanf_s("%d", &coding);
// if (coding == 1)
// {
// printf("堅持,你會有好offer\n");
// }
// else
// {
// printf("放棄,回家賣紅薯\n");
// }
// return 0;
//
}
//int main(){
// int coding = 0;
// printf("你會去敲代碼嗎?(選擇1 or 0):>");
// scanf_s("%d\n", &coding);
// if (coding == 1)
// {
// printf("堅持,你會有好offer\n");
// }
// else
// {
// printf("放棄,回家賣紅薯\n");
// }
// return 0;
//
}
第一個不加\n的
第二個加\n的,
運行結果:scanf中多敲了一個\n,運行時候就要多敲1個鍵加上回車,否則一直按回車鍵都將無法繼續打印,而且第二個圖任意輸入兩個數,運行結果只識別第一個數,與最後一個輸入的數字無關,ps:6在程序中運行結果為“回家賣紅薯“
而且,
\n換成“空格”也一樣
這是在vs編譯環境中,運行結果要多輸入一個數,而且第二個數不影響程序
理解:加了一個\n代表要在新的換行裏多輸入一個代碼,空格也是如此,也要多輸入一個代碼(代碼不能為純空格鍵),即%d後面為多輸入的代碼,不影響程序運行的結果。
開啟自己博客園的第一篇章