今日の人気記事

  1. コメント - プログラムの基本

入力した複数の文字列をソート

当ページのリンクには広告が含まれています。

スポンサーリンク

入力した複数の文字列をソートするサンプルプログラムを紹介します。

次のようなアルファベットの文字列

acb
abc
aab

を入力すると

aab
abc
acb

このようにソートします。

数字にも対応しているので、次のような文字列を入力すると

2ab
0ca
1bc

を入力すると

0ca
1bc
2ab

このようにソートします。

サンプルプログラム

それでは入力した3つも文字列をソートするサンプルプログラムをみてみましょう。

/*
 * C言語のサンプルプログラム - Webkaru
 * - 入力した複数の文字列をソート -
 */
 #include<stdio.h>
 #include<string.h>

int main(void)
{

  int i, j;

  /* 文字列の数 */
  int num = 3;

  /* 文字列 */
  char moji[3][20], tmp[20];

  /* 3つの文字列を入力 */
  printf("\n◆3つの文字列(半角英数字)を入力してください\n");
  for (i=0;i<num;i++) {
    printf("%dつめの文字列 = ", i+1);
    scanf("%s", moji[i]);
  }

  for(i=1;i<num;i++){
    for(j=1;j<num;j++){
      if(strcmp(moji[j-1], moji[j])>0){
        strcpy(tmp, moji[j-1]);
        strcpy(moji[j-1], moji[j]);
        strcpy(moji[j], tmp);
      }
    }
  }

  printf("\n◆文字列をソートしました。\n");
  for (i=0;i<num;i++)
    printf("%s\n", moji[i]);

  return 0;
}

サンプルプログラムで使っている構文

実行結果

いくつかの実行結果です。

◆3つの文字列(半角英数字)を入力してください
1つめの文字列 = abc
2つめの文字列 = abb
3つめの文字列 = aab

◆文字列をソートしました。
aab
abb
abc
◆3つの文字列(半角英数字)を入力してください
1つめの文字列 = 2ab
2つめの文字列 = 0ca
3つめの文字列 = 1bc

◆文字列をソートしました。
0ca
1bc
2ab

このように入力した文字列をソートします。

サンプルプログラム の人気記事

  1. サンプルプログラム集

  2. 入力した自然数の各桁の数字の和を計算する

  3. 入力した2つの自然数の最大公約数を求める

  4. アルファベットの連続(A to Z)と数字(0 to 9)の連番を出力する

  5. 2進数を10進数に変換する

  6. 入力した2つの整数が同じかどうかを判定する

  7. 配列に格納した数値を昇順ソートする

  8. 入力した摂氏温度を華氏温度に変換する

  9. 自分の名前を出力する

  10. 入力した2つの整数を足し算・引き算する

関連記事(一部広告含む)