プロが教える店舗&オフィスのセキュリティ対策術

C言語の問題で、ユーザが文字を入力し、CTRL+Zが押されるまで、半角英数字の入力を受け付ける。
受け付けた文字列(最大でも1000文字)を、小文字は大文字に、大文字は小文字に変換して表示するプログラムを作成する。数字に対しては何も変化させなくて良い。
けっこう考えたんですが全くわかりません。
どなたか知恵を貸してください。

A 回答 (5件)

#include <stdio.h>


#include <ctype.h>

int main (void)
{
int c;

if((c = getchar()) == EOF) return 0;
if(isupper(c)) c = tolower(c);
else c = toupper(c);
putchar(c);
main();
return 0;
}
    • good
    • 0

> CTRL+Zが押されるまで、



処理系に依存せずにCTRL+Zを検知する方法はありません。
処理系を特定するか、諦めるか、いずれかです。
なお、処理系を特定したとしても、ものによっては検知できない可能性があります。
    • good
    • 0

>プログラムの作り方から、なにをしたらいいかほとんど分かりません。



まず、C言語を勉強してください。
    • good
    • 0

多分 Ctrl+Z で処理を終了する方法がわからないんだね。

    • good
    • 0

どこが判らないのですか?


・プログラムの作り方?
・入出力?
・文字を変換するところ?
・文字を表示するところ?

この回答への補足

プログラムの作り方から、なにをしたらいいかほとんど分かりません。

補足日時:2007/10/05 20:44
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!