このディレクトリの索引 http://hibari.2ch.net/test/read.cgi/tech/1289816228/621 # C言語の質問です。自分でも何を言いたいのかわからないくらい初心者なのですが、 # 元々作成してあるファイル(テキストファイル)から、一文字ずつ入力して # スペースが入力されたらタブ文字を入れたテキストを画面に出力し # \nが入力されたら改行し # その他の文字が入力されたらそのまま画面に表示する # というプログラムを作りたいのですがソースプログラムはどのようにすればよいのでしょうか。 # アドバイスよろしくお願いします。 # # '元々作成してあるファイル(テキストファイル)から、一文字ずつ入力してスペースが入力されたらタブ文字を入れたテキストを画面に出力し\\nが入力されたら改行しその他の文字が入力されたらそのまま画面に表示する'(_テキストファイル) :- open(_テキストファイル,read,Instream), get_char(Instream,_文字), '一文字ずつ入力してスペースが入力されたらタブ文字を入れたテキストを画面に出力し\\nが入力されたら改行しその他の文字が入力されたらそのまま画面に表示する'(Instream,_文字), close(Instream),!. '一文字ずつ入力してスペースが入力されたらタブ文字を入れたテキストを画面に出力し\\nが入力されたら改行しその他の文字が入力されたらそのまま画面に表示する'(Instream,end_of_file) :- !. '一文字ずつ入力してスペースが入力されたらタブ文字を入れたテキストを画面に出力し\\nが入力されたら改行しその他の文字が入力されたらそのまま画面に表示する'(Instream,' ') :- 空白を読みとばす(Instream,_次の文字), write('\t'), '一文字ずつ入力してスペースが入力されたらタブ文字を入れたテキストを画面に出力し\\nが入力されたら改行しその他の文字が入力されたらそのまま画面に表示する'(Instream,_次の文字),!. '一文字ずつ入力してスペースが入力されたらタブ文字を入れたテキストを画面に出力し\\nが入力されたら改行しその他の文字が入力されたらそのまま画面に表示する'(Instream,_文字) :- write(_文字), get_char(_次の文字), '一文字ずつ入力してスペースが入力されたらタブ文字を入れたテキストを画面に出力し\\nが入力されたら改行しその他の文字が入力されたらそのまま画面に表示する'(Instream,_次の文字),!. 空白を読みとばす(Instream,end_of_file) :- at_end_of_stream(Instream),!. 空白を読みとばす(Instream,_文字) :- get_char(Instream,_文字), \+(_文字=' '),!. 空白を読みとばす(Instream,_文字) :- 空白を読みとばす(Instream,_文字).