/* 用户输入一个浮点数,不能用scanf函数,必须用getchar函数把用户输入的浮点数字符转换成浮点数数据,输出用户输入的浮点数+2.4以后的结果
a. 测试数据,用户输入10.5,程序输出 12.9
b. 测试数据,用户输入23.78,程序输出 24.18
c. 测试数据,用户输入20,程序输出 22.4
d. 测试数据,用户输入3,程序输出 5.4*/
供参考:
#include <stdio.h>
int main()
{
char ch;
int n = 0,k = 1,flg = 0;
double num = 0;
while((ch = getchar()) != '\n')
{
if (ch >='0' && ch <='9')
{
n = n * 10 + ch - '0';
if (flg) k *= 10;
}
else if (ch == '.'){
num = n;
n = 0;
flg = 1;
}
}
num += (double) n / k + 2.4;
printf("%g", num);
return 0;
}