编写程序,输人一行数字字符(用回车结束),每个数字字符 的前后都有空格。
把这一行中的数字转换成一个整数。 例如,若输入(<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`)。