問題の説明
各入力文字列のために、アルファベットが最大を見つけるために、請求、その文字以下の文字列「(MAX)」を挿入します。
入力
入力データは、テスト・インスタンス、大文字と小文字のみで構成される100の組成列を超えない長さの1つのラインの各列の複数を含みます。
出力
各テストケース列の出力ラインは、結果が最大文字が複数存在する場合は、各文字が「(max)を」最大の後ろに挿入される挿入文字列「(MAX)」の出力結果です。
サンプル入力
abcdefgfedcba XXXXX
サンプル出力
ABCDEFG(MAX)FEDCBA X(MAX)×(MAX)X(max)はX(MAX)×(MAX)
著者
LCY
ソース
推薦します
本题注意
1かかわらず大文字の、比較的単純なコードASIIC
2つのノートコードブロックは、プロジェクトパスは、中国が含まれている場合、デバッグブレークポイントブレークポイントで停止しませんので、英語でのプロジェクトパス場合、検出されました。
配列定義に格納された3列、最良利用
ボイド* のmemset (ボイド* STR 、INT C 、size_tのN末端、内部割り当てられていないように「\ 0」ターミネータ文字列を防止するために、初期化時)、誤解文字列の長さ(すなわち、好ましくは、「\ 0」ASIICコードであるに初期化されていません)
C言語のコードを次のように:
する#include <stdio.hに> する#include < 文字列・H> int型のmain() { チャー S [ 300 ]。 memsetの(S、123、300 )。 一方、(scanf関数(" %sは"!、S)= EOF) { ; GETCHAR() チャー一時= 「A 」。 以下のために(int型私は= 0 ; S [i]を=!' \ 0 ' ; I ++ ) の場合(S [i]は> 温度) 温度を= S [i]は、 以下のために(int型私は= 0 ; S [i]を=!' \ 0 ' ; I ++ ) { 場合(S [i]を== TEMP) { のために(int型 J = strlen関数(S); J> = I + 1、J- - ) S [J + 5 ] = S [J]。 S [ ++ I] = ' (' ; S [ ++ I] = ' M ' ; S [ ++ I] = ' ' ; S [ ++ I] = ' X ' 。 S [ ++ I] = ' )' 。 } } のprintf(" %sの\ n " 、S); } }