/* 用户输入一个浮点数,不能用scanf函数,必须用getchar函数把用户输入的浮点数字符转换成浮点数数据,输出用户输入的浮点数+2.4以后的结果
a. 测试数据,用户输入10.5,程序输出 12.9
b. 测试数据,用户输入23.78,程序输出 24.18
c. 测试数据,用户输入20,程序输出 22.4
d. 测试数据,用户输入3,程序输出 5.4*/

用位运算,基本数据类型写,数组还没学(语言-c语言)
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- qzjhjxj 2022-11-24 22:46关注
供参考:
#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; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报