10個のコマンドライン引数を取り、それらに対して特定のアクションを実行するプログラムをCで作成しようとしています。int main(int argc, char **argv)
10 個の引数を受け入れる部分と、ユーザーが 10 個すべてを入力すると結果を出力する部分が既にありますprintf(" %s", argv[i]);
。
入力された各コマンドライン引数でアクション自体を実行する方法を理解しようとしています。つまり、次のとおりです。
- などの特殊記号をすべて削除し
(*&%^’$+_
ます。 - 文字以外をすべて削除
そして最後に:
- 引数に 1 つ以上の数字が含まれる場合、最初の数字が n であると仮定して、その引数を n 番目の引数に置き換えます (唯一の例外は 0 で、10 番目の引数にマップする必要があります)。たとえば、入力された引数が の場合
764
、この引数は 7 番目の引数に置き換えられます。
編集:以下のより良い例で更新
入力例を次に示します (10 個のユーザー入力引数)。
sda 789 io90 poi 4kl24PP +df_1JK MN BV XC __5555
そして出力はどうあるべきか:
sda MN XC poi poi sda MN BV XC klPP
(また、789 が MN である 7 番目の出力にどのようにマップされるかにも注意してください)