2)从键盘输入一个小于1000的正数,要求输出它的平方根(如平方根不是整数,则输出其整数部分)。要求在输入数据后先对其进行检查是否小于1000的正数。若不是,则要求重新输c语言
时间: 2024-11-23 08:39:48 浏览: 26
在C语言中,你可以使用`<math.h>`库来计算平方根,并使用`scanf`函数从用户那里获取输入。首先,你需要检查输入的数据类型和范围。下面是一个简单的程序示例:
```c
#include <stdio.h>
#include <math.h>
int main() {
double num;
int valid = 0;
while (!valid) {
printf("请输入一个小于1000的正数: ");
if (scanf("%lf", &num) == 1 && num > 0 && num < 1000) {
valid = 1;
} else {
printf("输入错误!请确保输入的是一个小于1000的正数。\n");
clear_input(); // 清除上一次输入
}
}
double sqrt_num = sqrt(num);
int floor_sqrt = (int)sqrt_num; // 取整数部分
printf("输入数字的平方根为 %d\n", floor_sqrt);
return 0;
}
// 清除上一次输入,避免干扰后续输入
void clear_input() {
while (getchar() != '\n'); // 清除行结束符
}
```
在这个程序中,我们使用了一个循环来不断提示用户输入,直到他们提供一个有效的小于1000的正数。然后计算平方根并取整数部分输出。
阅读全文