用c语言写整数部分的位数 编写程序输入一个数后,输出其整数部分的位数(例如输入123.4则输出3,输入-0.6则输出0)。
时间: 2024-02-12 22:08:30 浏览: 69
【c语言】输入一个浮点数(小数点后面有三位数),然后分别求出输出该数的整数部分和小数部分。
好的,以下是用 C 语言实现的程序:
```c
#include <stdio.h>
int main() {
double num;
printf("请输入一个数:");
scanf("%lf", &num);
int cnt = 0;
int integer_num = (int)num; // 取整数部分
while (integer_num != 0) {
integer_num /= 10;
cnt++;
}
printf("整数部分的位数:%d\n", cnt);
return 0;
}
```
这个程序首先使用 `%lf` 格式化字符串读入一个双精度浮点数 `num`,然后使用强制类型转换 `(int)num` 将其转换为整型变量 `integer_num`。接着,使用一个循环来计算 `integer_num` 的位数,每次将其除以 10 并将计数器 `cnt` 加1,直到 `integer_num` 变为 0。最后,输出整数部分的位数 `cnt` 即可。
阅读全文