编写一个C语言程序 编写程序,从键盘上输入一个四位正整数先将该数反序输出,再求这个反序数的平方根,平方根保留两位小数。
时间: 2024-10-18 15:21:23 浏览: 36
在C语言中,我们可以使用标准库函数如`scanf()`读取用户输入,数组来存储数字反转,以及数学库函数`sqrt()`计算平方根。以下是一个简单的示例程序:
```c
#include <stdio.h>
#include <math.h>
// 函数声明,用于交换数组元素
void reverse(int arr[], int n);
int main() {
int num, reversed_num[4]; // 定义变量和数组
float sqrt_of_reversed;
// 从键盘获取四位正整数
printf("请输入一个四位正整数: ");
scanf("%d", &num);
// 反转数字并保存到reversed_num数组
reverse(reversed_num, 4); // 假设我们有一个reverse函数处理这个任务
for (int i = 0; i < 4; i++) {
reversed_num[i] *= 10; // 因为数组存放的是个位到最高位,需要先乘以10
reversed_num[i] += num % 10;
num /= 10;
}
// 计算反转数的平方根并保留两位小数
sqrt_of_reversed = sqrt((double)reversed_num[3]) * sqrt((double)reversed_num[2]) * sqrt((double)reversed_num[1]) * sqrt((double)reversed_num[0]);
sqrt_of_reversed = printf("%f", roundf(sqrt_of_reversed * 100) / 100.0); // 使用printf直接格式化输出
return 0;
}
// 反转函数,假设传入的数组足够大
void reverse(int arr[], int n) {
int temp;
for (int i = 0; i < n / 2; i++) {
temp = arr[i];
arr[i] = arr[n - i - 1];
arr[n - i - 1] = temp;
}
}
```
阅读全文