输入非负实数怎么编程

时间:2025-01-23 08:11:55 游戏攻略

输入非负实数通常可以通过以下几种方法编程实现:

使用C++标准库中的`cin`和`cout`

可以使用`cin`来读取用户输入的非负实数,并使用`cout`来输出结果。为了保留小数点后两位,可以使用`setf`函数和`precision`方法。

```cpp

include

include

using namespace std;

int main() {

double x;

cout << "请输入一个非负实数: ";

cin >> x;

if (x >= 0) {

cout << "该非负实数的平方根(保留两位小数)是: " << fixed << setprecision(2) << sqrt(x) << endl;

} else {

cout << "输入错误,请输入一个非负实数。" << endl;

}

return 0;

}

```

使用递归方法求数字之和

如果需要输入一个非负整数并计算其数字之和,可以使用递归方法。

```cpp

include

using namespace std;

int sumOfDigits(int n) {

if (n == 0) return 0;

return n % 10 + sumOfDigits(n / 10);

}

int main() {

int number;

cout << "请输入一个非负整数: ";

cin >> number;

if (number >= 0) {

int sum = sumOfDigits(number);

cout << "该非负整数的数字之和是: " << sum << endl;

} else {

cout << "输入错误,请输入一个非负整数。" << endl;

}

return 0;

}

```

使用数组处理多个非负整数

如果需要输入多个非负整数并进行排序、求和等操作,可以使用数组来存储这些整数,并编写相应的函数来处理。

```cpp

include

include

include

using namespace std;

unsigned short ReadNumber(int num[], unsigned short &n) {

int input;

cout << "请输入非负整数(输入-1结束): ";

while (cin >> input) {

if (input == -1) break;

num[n++] = input;

}

return n;

}

void SortNumberDescending(int num[], unsigned short n) {

sort(num, num + n, greater());

}

void SummingAveraging(int num[], unsigned short n, int *pSum, float *pAver) {

*pSum = 0;

*pAver = 0.0;

for (unsigned short i = 0; i < n; ++i) {

*pSum += num[i];

*pAver += static_cast(num[i]);

}

*pAver /= n;

}

void PrintNumber(int num[], unsigned short n) {

cout << "降序排序后的数字: ";

for (unsigned short i = 0; i < n; ++i) {

cout << num[i] << " ";

}

cout << endl;

}

int main() {

int num;

unsigned short n;

n = ReadNumber(num, n);

SortNumberDescending(num, n);

int sum;

float aver;

SummingAveraging(num, n, &sum, &aver);

cout << "数字和: " << sum << endl;

cout << "平均值: " << fixed << setprecision(2) << aver << endl;

return 0;

}

```

这些方法可以根据具体需求选择使用,以满足不同场景下的输入和计算要求。