用WHILE语句输入一个实数判断其整数部分的位数
时间: 2023-12-09 19:04:44 浏览: 40
```
num = float(input("请输入一个实数:"))
integer_part = int(num)
count = 0
while integer_part > 0:
integer_part //= 10
count += 1
print("该实数的整数部分位数为:", count)
```
相关问题
用C语言编写代码,输入一个实数,求整数部分位数
我可以提供一个简单的示例代码:int count = 0; double number; printf("请输入一个实数:"); scanf("%lf", &number); int int_part = (int)number; while(int_part > 0) { count++; int_part /= 10; } printf("该实数的整数部分位数为%d位。", count);
用c语言while语句输入一个整数,输出其位数。数据无效时重新输入
A:
```
#include <stdio.h>
int main() {
int num, count;
do {
printf("请输入一个整数:");
scanf("%d", &num);
if (num < 0) { // 数据无效
printf("输入数据无效,请重新输入。\n");
}
} while (num < 0);
count = 0;
while (num != 0) {
count++; // 统计位数
num /= 10;
}
printf("该整数的位数为:%d\n", count);
return 0;
}
```
首先使用 do-while 循环输入一个整数,当输入的数据无效(即小于 0)时重新输入。
然后使用 while 循环统计整数的位数,每次将整数除以 10,直到整数变为 0。最后输出统计得到的位数。