帮我写一个.c程序,输入一个正整数,输出它的平方和算数平方根
时间: 2023-04-07 09:03:10 浏览: 252
好的,这个问题可以回答。以下是一个简单的.c程序,可以实现输入一个正整数,输出它的平方和算数平方根:
```c
#include <stdio.h>
#include <math.h>
int main()
{
int n;
double sum = 0, root;
printf("请输入一个正整数:");
scanf("%d", &n);
for (int i = 1; i <= n; i++)
{
sum += pow(i, 2);
}
root = sqrt(sum);
printf("平方和为:%.2lf\n", sum);
printf("算数平方根为:%.2lf\n", root);
return 0;
}
```
注意,这只是一个简单的示例程序,可能还有优化的空间。
相关问题
计算并输出一个正整数的算数平方根,不能使用库函数,若不是整数则输出整数部分,使用c++
在C++中计算一个正整数的算术平方根且不使用库函数,可以采用牛顿迭代法来实现。这是一个迭代算法,通过不断逼近的方式找到目标值。以下是简单的步骤:
```cpp
#include <iostream>
using namespace std;
// 定义一个函数计算平方根
int sqrt(int num) {
if (num == 0 || num == 1)
return num; // 整数0和1的平方根分别为0和1
int guess = num / 2; // 初始猜测值为num的一半
while (guess * guess <= num) { // 当猜测值的平方小于等于原数时循环
guess = (guess + num / guess) / 2;
}
return guess; // 返回接近实际平方根的结果
}
int main() {
int input;
cout << "请输入一个正整数:";
cin >> input;
// 检查输入是否为正整数
if (input > 0) {
int result = sqrt(input);
cout << "该数的算术平方根为:" << result << endl;
if (result * result != input) { // 如果结果的平方不等于原数,则说明不是整数部分
cout << "整数部分为:" << result << endl;
} else {
cout << "整数部分为:" << result << ", 因为它是完全平方数" << endl;
}
} else {
cout << "输入错误,需要正整数。" << endl;
}
return 0;
}
```
阅读全文