21xrx.com
2024-12-28 09:21:29 Saturday
登录
文章检索 我的文章 写文章
C++代码:输入十个整数,输出第二大数
2023-07-07 08:09:29 深夜i     --     --
C++ 输入 十个整数 输出 第二大数

在C++程序中,有时候需要在一堆数字中找到第二大的数。这是一个基本的编程问题,可以用简单的代码来解决。

我们可以使用一个数组来存储输入的十个整数,然后使用循环和条件语句来找到第二大的数。

让我们看一下实现该功能的步骤:

1. 首先,我们需要向用户请求输入十个整数。为了简单起见,在本例中我们将从控制台输入这些数字。

2. 在接收到输入后,我们将这些数字存储到一个数组中。

3. 接下来,我们可以使用两个变量来追踪第一和第二大的数字。让我们将它们初始化为数组中的前两个数字。如果第一个数比第二个数大,我们将交换它们的位置,以确保第一个数始终比第二个数大。

例如:

if (num[0] > num[1]) {

  int temp = num[1];

  num[1] = num[0];

  num[0] = temp;

}

现在,num[0]包含第一大的数字,num[1]包含第二大的数字。

4. 接下来,我们可以遍历数组,从第三个数字开始。如果当前数字比第二大的数字大,我们将第二大的数字更新为当前数字。如果当前数字比第一大的数字大,我们将第一大的数字更新为当前数字,并将第二大的数字更新为第一大的数字。如果当前数字比第一大的数字小,我们继续遍历下一个数字。最后,第二大的数字将是我们要找的数字。

例如:

for (int i = 2; i < 10; i++) {

  if (num[i] > num[1]) {

    num[1] = num[i];

  }

  if (num[i] > num[0]) {

    int temp = num[0];

    num[0] = num[i];

    num[1] = temp;

  }

}

5. 最后,我们可以输出第二大的数字。

例如:

cout << "The second largest number is: " << num[1];

这就完成了查找第二大数字的任务。

下面是完整的C++代码:


#include <iostream>

using namespace std;

int main() {

  int num[10];

  // Prompt user to enter 10 numbers

  cout << "Please enter 10 integers: ";

  // Store numbers in array

  for (int i = 0; i < 10; i++) {

    cin >> num[i];

  }

  // Find second largest number

  if (num[0] > num[1]) {

    int temp = num[1];

    num[1] = num[0];

    num[0] = temp;

  }

  for (int i = 2; i < 10; i++) {

    if (num[i] > num[1]) {

      num[1] = num[i];

    }

    if (num[i] > num[0]) {

      int temp = num[0];

      num[0] = num[i];

      num[1] = temp;

    }

  }

  // Output second largest number

  cout << "The second largest number is: " << num[1] << endl;

  return 0;

}

总之,编写一个查找第二大数字的程序非常简单。只需遍历数组,追踪首位和次位数字即可。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复