C言語で選択ソートの処理を説明する
選択ソートは、配列から最小の数値を見つけて最初の位置に配置するために使用される積極的なアルゴリズムです。次に走査される配列は、最小の数値が配置されている場所に近いインデックスから開始されます。
選択による並べ替えのプロセス
要素のリストから最初の最小の要素を選択し、最初の位置に配置します。
すべての要素が並べ替えられるまで、リスト内の残りの要素に対して同じ操作を繰り返します。
次のリストを検討してください -
最初のパス
Sm = a[0] = 30 Sm
a[1] < sm $\ square $ $\square$ 50 <30 (F) $\square$ $\square$ 30< sm $\square$ $\square$ 50 <30 (F) $\square$ $\square$ 30
a[2] < sm $\square$ $ \square$ 40 <30 (F) $\square $ $\square$ 20$\square$ a[0] を sm 値と交換< sm $\square$ $ \square$ 40 <30 (F) $\square$ $\square$ 20$\square$ 将 a[0] 与 sm 值交换
a[3] < sm $\square$ $\square $ 10 <30 (T) $\square$ $ \square $ 10< sm $\square$ $\square $ 10 <30 (T) $\square$ $\square$ 10
a[4] < sm $\square$ $\square$ 20<10 (F) $\square$ $\square 10 $< sm $\square$ $\square$ 20<10 (F) $\square$ $\square 10 美元
10 50 40 30 20
2 回目のパス
Sm = a[1] = 50 sm
a[2] < sm $\square$ $\square$ 40 <50 (T) $\square$ 40 $\square$< sm $\square$ $\square$ 40 <50 (T) $\square$ 40 $\square$
a[3 ] < sm $\square$ $ \square$ 30 <40 (T) $\square$ 30 a[1] を sm 値< sm $\square$ $ \square$ 30 <40 (T) $\square$ 30 将 a[1] 与 sm 值交换
a[4] と交換 < sm $\square$ $\square$ 20<30 (T) $ \square$ 20< sm $\square$ $\square$ 20<30 (T) $ \平方$ 20
10 20 40 30 50
3 パス目
Sm = a[2] = 40 Sm
a[3] a[4] a[3] < sm $\square$ $\square$ 30 <40 (T) $ \square$ $\ square$ 40 a[4] 10 20 30 40 50
Sm = a[3] = 40 Sm
for (i=0; i<n-1; i++){ sm=i; for (j=i+1; j<n; j++){ if (a[j] < a[sm]) sm=j; } t=a[i]; a[i] = a[sm]; a[sm] = t; } }
#include<stdio.h> int main(){ int a[50], i,j,n,t,sm; printf("enter the No: of elements in the list:</p><p>"); scanf("%d", &n); printf("enter the elements:</p><p>"); for(i=0; i<n; i++){ scanf ("%d", &a[i]); } for (i=0; i<n-1; i++){ sm=i; for (j=i+1; j<n; j++){ if (a[j] < a[sm]){ sm=j; } } t=a[i]; a[i]=a[sm]; a[sm]=t; } printf ("after selection sorting the elements are:</p><p>"); for (i=0; i<n; i++) printf("%d\t", a[i]); return 0; }
enter the No: of elements in the list: 4 enter the elements: 45 12 37 68 after selection sorting the elements are: 12 37 45 68
以上がC言語で選択ソートの処理を説明するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











typedef struct は、構造体の使用を簡素化するために構造体型のエイリアスを作成するために C 言語で使用されます。構造体の別名を指定することで、新しいデータ型を既存の構造体に別名付けします。利点としては、可読性の向上、コードの再利用、型チェックなどが挙げられます。注: エイリアスを使用する前に構造体を定義する必要があります。エイリアスはプログラム内で一意であり、宣言されているスコープ内でのみ有効である必要があります。

real は、C 言語で倍精度浮動小数点数を表すために使用されるデータ型で、8 バイトを占有し、小数点以下 15 桁程度の精度を持ち、範囲は [-1.7976931348623157e+308, 1.7976931348623157e+308] です。

strict キーワードは、変数にはポインターによってのみアクセスできることをコンパイラーに通知するために使用され、未定義の動作を防止し、コードを最適化し、読みやすさを向上させます。複数のポインターが同じ変数を指している場合の未定義の動作を防止します。コードを最適化するために、コンパイラは、restrict キーワードを使用して変数アクセスを最適化します。変数にはポインターによってのみアクセスできることを示すことで、コードの可読性が向上します。

複素数型は、C 言語で実数部と虚数部を含む複素数を表すために使用されます。その初期化形式は complex_number = 3.14 + 2.71i で、実数部は creal(complex_number) を通じてアクセスでき、虚数部は cimag(complex_number) を通じてアクセスできます。この型は、加算、減算、乗算、除算、剰余などの一般的な数学演算をサポートします。さらに、cpow、csqrt、cexp、csin など、複素数を処理するための一連の関数が提供されています。

C 言語では、べき乗演算を実装する方法が 2 つあります。 pow() 関数を使用して、最初のパラメーターの 2 番目のパラメーターのべき乗を計算します。カスタム累乗関数を定義します。これは再帰的または反復的に実装できます。再帰的メソッドは、累乗が 0 になるまで 2 倍にし続けます。反復法では、ループを使用して基数を 1 つずつ乗算します。

C 言語では、scanf 関数のエラーを処理する方法は次のとおりです。 1. フォーマット文字列を確認する、 3. 戻り値を確認する、 5. エラー処理関数を使用する、 6. を使用する。カスタムエラーに対処します。エラーを防ぐには、正しいデータ型を使用し、入力を慎重に検証し、戻り値を確認し、プログラム内の潜在的なエラーを処理します。

_Bool は C 言語のブール型を表し、true または false の 2 つの値のみを含む単純なデータ型で、通常は 1 バイトのメモリを占有し、true または false のみを格納します。 false。偽の値。

reg は C 言語のレジスタのキーワードであり、レジスタを指すポインタ変数を宣言するために使用されます。構文: register data_type *var_name; ここで、data_type はレジスタに格納されているデータ型、var_name はポインター変数の名前です。レジスタ内の値はポインタを逆参照することでアクセスできますが、利用可能なレジスタはプラットフォームやコンパイラによって異なることに注意してください。
