在C語言中,scanf() 函數是用于從標準輸入(通常是鍵盤)獲取用戶輸入的常用方式。scanf() 是一個標準庫函數,屬于 stdio.h 頭文件,要使用 scanf() 函數,你需要先包含這個頭文件。

十年建站經驗, 成都網站設計、成都網站制作客戶的見證與正確選擇。創(chuàng)新互聯(lián)公司提供完善的營銷型網頁建站明細報價表。后期開發(fā)更加便捷高效,我們致力于追求更美、更快、更規(guī)范。
以下是 scanf() 函數的基本使用方法和一些高級技巧:
基本語法
#includeint main() { int num; printf("請輸入一個整數: "); scanf("%d", &num); // %d 表示讀取整數 printf("你輸入的整數是: %d ", num); return 0; }
在上面的例子中,%d 是一個格式指定符,它告訴 scanf() 函數我們想要讀取一個整數。&num 是變量 num 的地址,scanf() 需要這個地址來存儲用戶輸入的值。
格式化輸入
scanf() 支持多種不同的格式指定符,用來讀取不同類型的數據:
%d 讀取十進制整數
%f 讀取浮點數
%c 讀取字符
%s 讀取字符串
%lf 讀取雙精度浮點數 (double)
%o 讀取八進制數
%x 或 %X 讀取十六進制數
輸入多個值
如果你需要輸入多個值,你可以在 scanf() 中使用多個格式指定符:
#includeint main() { int a, b; printf("請輸入兩個整數,用空格隔開: "); scanf("%d %d", &a, &b); // 輸入兩個整數,用空格分隔 printf("你輸入的兩個整數分別是: %d 和 %d ", a, b); return 0; }
忽略空白字符
默認情況下,scanf() 會忽略任何非格式指定的輸入,包括空白字符(空格、制表符、換行符),如果你想讀取字符串中的空白字符,你可以使用 %[^] 格式指定符:
#includeint main() { char str[100]; // 讀取包含空白字符的字符串 printf("請輸入一個字符串(可以包含空格): "); scanf("%[^ ]", str); // %[^ ] 讀取直到換行符為止的所有字符 printf("你輸入的字符串是: %s ", str); return 0; }
限制輸入長度
為了防止緩沖區(qū)溢出,你可以使用 scanf() 的 m 修飾符來限制讀取的最大字符數:
#includeint main() { char name[20]; // 限制讀取的字符數量為19個,留一個位置給字符串結束符 '