ホームページ  >  記事  >  バックエンド開発  >  配列内で 2 番目に大きい数値と 2 番目に小さい数値を見つける C プログラム

配列内で 2 番目に大きい数値と 2 番目に小さい数値を見つける C プログラム

王林
王林転載
2023-09-06 08:33:121097ブラウズ

配列内で 2 番目に大きい数値と 2 番目に小さい数値を見つける C プログラム

配列要素を入力し、交換手法を使用して数値を降順に並べ替えます。次に、インデックス位置を使用して、配列内の 2 番目に大きい要素と 2 番目に小さい要素を出力してみます。

Array は、共通の要素のグループを同じ名前で保存するために使用されます。

Array は、共通の要素のグループを同じ名前で保存するために使用されます。 p>

C 言語での配列操作は次のとおりです。

  • 挿入
  • 削除
  • 検索 li>

アルゴリズム

以下は、配列内で 2 番目に大きい数値と 2 番目に小さい数値を見つけるアルゴリズムです -

ステップ 1 strong> - 要素の数を宣言して読み取ります。

ステップ 2 - 実行時に配列サイズを宣言して読み取ります。

ステップ 3 - 配列要素を入力します。

ステップ 4 - 数値を降順に並べます。

ステップ 5 - 次に、インデックスを使用して、2 番目に大きい数値と 2 番目に小さい数値を見つけます。

ステップ 6 - 2 番目に大きい数値と 2 番目に小さい数値を出力します。

プログラム

以下は、 配列内で 2 番目に大きい数値と 2 番目に小さい数値を見つけるための C プログラムです -

#include<stdio.h>
void main(){
   int i,j,a,n,counter,ave,number[30];
   printf ("Enter the value of N</p><p>");
   scanf ("%d", &n);
   printf ("Enter the numbers </p><p>");
   for (i=0; i<n; ++i)
      scanf ("%d",&number[i]);
   for (i=0; i<n; ++i){
      for (j=i+1; j<n; ++j){
         if (number[i] < number[j]){
            a = number[i];
            number[i] = number[j];
            number[j] = a;
         }
      }
   }
   printf ("The numbers arranged in descending order are given below</p><p>");
   for (i=0; i<n; ++i)
      printf ("%10d</p><p>",number[i]);
   printf ("The 2nd largest number is = %d</p><p>", number[1]);
   printf ("The 2nd smallest number is = %d</p><p>", number[n-2]);
   ave = (number[1] +number[n-2])/2;
   counter = 0;
   for (i=0; i<n; ++i){
      if (ave==number[i])
         ++counter;
   }
   if (counter==0)
      printf("The average of 2nd largest & 2nd smallest is not in the array</p><p>");
   else
      printf("The average of 2nd largest & 2nd smallest in array is %d in numbers</p><p>", counter);
}

出力

上記のプログラムを実行すると、次の結果が生成されます-

Enter the value of N

5
Enter the numbers
10
12
17
45
80

The numbers arranged in descending order are given below
80
45
17
12
10
The 2nd largest number is = 45
The 2nd smallest number is = 12
The average of 2nd largest & 2nd smallest is not in the array

以上が配列内で 2 番目に大きい数値と 2 番目に小さい数値を見つける C プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。