一次遍历找出整型数组中第二大数

const int MIN=-32767;
int find_sed_max(int data[],int count)
{
    int max_num=data[0];
    int sed_num=MIN;
    for(int i=1;i<count;i++)
    {
        if(data[i]>max_num)
        {
            sed_num=max_num;
            max_num=data[i];
        }
        else
        {
            if(data[i]>sed_num)
                sed_num=data[i];
        }
    }
    return sed_num;
}


### 回答1: 可以使用以下代码实现: ```python # 定义一个有20个元素的整型数组 arr = [] * 20 # 遍历一次赋数组元素的为下标的平方加1 for i in range(20): arr[i] = i ** 2 + 1 # 反序遍历一次输出数组的所有元素 for i in range(19, -1, -1): print(arr[i]) ``` 输出结果为: ``` 399 362 321 276 227 174 117 56 1 42 81 116 147 174 197 216 231 242 249 252 ``` ### 回答2: 编程定义一个有20个元素的整型数组,实现赋和反序遍历输出数组的所有元素的功能。具体操作如下: 首先定义一个长度为20的整型数组,用变量arr表示,数组里每个元素的初始为0,如下所示: ```java int[] arr = new int[20]; ``` 接着,编写一个for循环遍历数组元素,对每个元素进行赋操作。根据题目要求,数组的下标从0开始,元素的等于下标的平方加1。具体代码实现如下: ```java for(int i=0;i<arr.length;i++){ arr[i] = i*i + 1; } ``` 上述代码首先定义一个变量i作为遍历数组的指针,从0开始循环到数组下标的最大。在每次循环过程中,计算当前下标的平方并加1,将计算结果赋给数组元素arr[i]。 接下来,再编写一个for循环反序遍历数组元素,将元素的输出到控制台。具体代码实现如下: ```java for(int i=arr.length-1;i>=0;i--){ System.out.print(arr[i] + " "); } ``` 上述代码首先定义一个变量i作为反序遍历数组的指针,从数组下标的最大开始循环到0。在每次循环过程中,输出当前元素的,并在输出的数字之间加上一个空格。 完整代码如下所示: ```java public class Main { public static void main(String[] args) { int[] arr = new int[20]; for(int i=0;i<arr.length;i++){ arr[i] = i*i + 1; } for(int i=arr.length-1;i>=0;i--){ System.out.print(arr[i] + " "); } } } ``` 运行代码,将得到以下输出结果: ```java 399 361 325 291 259 229 201 175 151 129 109 91 75 61 49 39 31 25 21 19 ``` 以上是对题目编程实现的详细解释,希望能对您有所帮助。 ### 回答3: 对于这个编程任务,我们需要用到一个大小为20的整型数组。首先需要定义这个数组,并为每个元素赋上下标的平方加1的。我们可以使用一个for循环遍历数组,再使用下标的平方加一的公式来为每个元素赋。具体代码如下: int arr[20]; //定义一个大小为20的整型数组 for(int i=0; i<20; i++){ arr[i] = i*i + 1; //给每个元素赋 } 接下来,需要反向遍历数组并输出每个元素的。可以使用一个for循环,从数组的最后一个元素开始遍历,一直到第一个元素。具体代码如下: for(int i=19; i>=0; i--){ cout << arr[i] << " "; //输出每个元素的 } 最终,整个程序的代码如下: #include <iostream> using namespace std; int main() { int arr[20]; //定义一个大小为20的整型数组 for(int i=0; i<20; i++){ arr[i] = i*i + 1; //给每个元素赋 } for(int i=19; i>=0; i--){ cout << arr[i] << " "; //输出每个元素的 } return 0; } 这样,程序就能够正确地定义一个大小为20的整型数组,遍历一次并为每个元素赋,再反向遍历一次并输出数组中所有元素的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值