編寫程序,輸人一行數字字符(用回車結束),每個數字字符 的前后都有空格。
把這一行中的數字轉換成一個整數。 例如,若輸入(<CR>代表 Enter鍵):2 4 8 3<CR>則輸出 整數:2483。
#include <stdio.h>int main() {char ch;int number = 0;printf("請輸入一行數字字符(每個數字字符前后都有空格):\n");// 逐個讀取字符,直到遇到換行符while ((ch = getchar()) != '\n') {if (ch>='0'&&ch<='9') // 檢查是否為數字字符{ number = number * 10 + (ch - '0'); // 將字符轉換為數字并累加}}printf("整數: %d\n", number);// 輸出結果return 0;
}
注意事項:
程序假設輸入的數字字符之間只有一個空格,并且輸入的數字字符前后也有空格。
如果輸入格式不同(例如多個空格或其他字符),程序仍然可以正確提取數字字符并生成整數。
如果輸入的數字超過 `int` 類型的范圍,可能會導致溢出問題。可以根據實際需求使用更大的數據類型(如 `long long`)。