从键盘输入一个小于1000的整数,要求输出它的平方根(如果平方根不是整数,则输出整数部分)。要求在输入数据后先检查其是否小于1000,若不是,则要求重新输入。 编写程序,用scanf函数得到输入,求出结果后将其输出,输出格式参考output文件。
时间: 2024-11-17 11:30:48 浏览: 20
这是一个简单的编程任务,可以使用C语言中的`<math.h>`库来计算平方根,并通过`%d`格式说明符获取用户输入的整数。下面是一个示例程序,它将满足上述要求:
```c
#include <stdio.h>
#include <math.h>
int main() {
int num;
while (true) {
printf("请输入一个小于1000的整数: ");
if (scanf("%d", &num) == 1 && num < 1000) { // 检查输入
double sqrt_num = sqrt(num); // 计算平方根
if (sqrt_num - floor(sqrt_num) == 0) { // 如果是整数
printf("输入的数字 %d 的平方根是 %d\n", num, floor(sqrt_num));
} else { // 否则是浮点数
printf("输入的数字 %d 的平方根是 %lf\n", num, sqrt_num);
}
break; // 输入有效,跳出循环
} else {
printf("输入错误,请输入一个小于1000的整数。\n");
scanf("%*[^\n]"); // 清空输入缓冲区
}
}
return 0;
}
```
在这个程序中,我们使用`scanf`读取用户的输入并检查是否小于1000。如果输入有效,计算平方根并判断是否为整数;如果不是,直接输出浮点数形式的平方根。如果输入无效,提示用户重新输入。
阅读全文