[Atelier Blue アトリエブルー]Homeコンテストパソコン甲子園2003年本選>24問目

24問目(大文字化)

問題

文字列に含まれる半角英子文字を半角英大文字に置き換え、出力するプログラムを作成。なお、半角小文字以外の文字は置き換えないこと。

入力

半角英小文字、ピリオド、空白のみを含む文字列

出力

半角英小文字を半角英大文字に置き換えた文字列

入力例

that pen is mine.

出力例

THAT PEN IS MINE.

解き方例

今回使用可能な言語の標準ライブラリには文字を操作するものも含まれているはずです。それを使いましょう。もちろん、自前でやっても構いませんよ。

ソースコード

お持ち帰り

C/C++

#include <stdio.h>
#include <ctype.h>

int main(){
    int in;
    while(1){
        in = getchar();
        if(in == '\n')break;
        //toupperは小文字だった場合大文字に変換する関数です。
        putchar(toupper(in));
    }
    putchar('\n');
    return 0;
}

その他

この手の問題ではライブラリのを知っているほど有利です。とりあえず文字・文字列操作系のライブラリは一通り把握しておきましょう。そういえば、ここの文字列って、「改行で終わる文字集合」という解釈でいいのでしょうか?


ページの一番上へ
前のページへ 一覧に戻る 次のページへ
初版2006-5-28
[Atelier Blue アトリエブルー]Homeコンテストパソコン甲子園2003年本選>24問目