配列要素を入力し、交換手法を使用して数値を降順に並べ替えます。次に、インデックス位置を使用して、配列内の 2 番目に大きい要素と 2 番目に小さい要素を出力してみます。
Array は、共通の要素のグループを同じ名前で保存するために使用されます。
Array は、共通の要素のグループを同じ名前で保存するために使用されます。 p>
C 言語での配列操作は次のとおりです。
以下は、配列内で 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 サイトの他の関連記事を参照してください。