ページ 1 / 1
C言語でテキストファイルを開業したい
Posted: 2009年9月16日(水) 20:43
by mint
教えてください。
次のような一行で数字の間にスペースがあるテキストファイルがあります。
12 23 23 53 54 43
これを次のように2列ずつ改行したいのですがやり方がわかりません。
12 23
23 53
54 43
Re:C言語でテキストファイルを開業したい
Posted: 2009年9月16日(水) 21:27
by dic
まず、スペースの空いた一行を配列に格納するのが分からないのか
配列に格納後、2列ずつファイルに出力するアルゴリズムが思い浮かばないのか
何ができないか、どこでつまづいてるかを書いてくれると回答者もでてきそうです
Re:C言語でテキストファイルを開業したい
Posted: 2009年9月16日(水) 21:46
by conio
-----------------------------------------------------------------------------------------
①数字が並んだテキストファイルAを、2行で改行するようにしてテキストファイルBに書き出す。
②数字が並んだテキストファイルAを読み込み、2行で改行するようにして実行画面に表示。
③数字が並んだテキストファイルAを、2行で改行した状態に変更したい。
-----------------------------------------------------------------------------------------
表現が曖昧なので、上記のどれなのか、もしくは上記以外の別の処理なのか分かりません。
普通に改行したいのであれば、「テキストファイルを開いてエンターキーを押せば改行できます。」
という回答もアリになってしまいます。
Re:C言語でテキストファイルを開業したい
Posted: 2009年9月17日(木) 08:08
by mint
表現があいまいでした。すみません。
数字が並んだテキストファイルAを、2行で改行した状態にしたいと考えていますが、直接テキストファイルを開いてエンターキーを押すにはデータ量があまりに多すぎるためできません。
23 32 33 23 43 53 ・・・のような一行を配列に格納するやり方と、配列に格納後、2列ずつファイルに出力するアルゴリズムが 分かりません。
もしくは他の方法でもよいのですが、教えてください。よろしくお願いします。
Re:C言語でテキストファイルを開業したい
Posted: 2009年9月17日(木) 09:43
by たかぎ
> 23 32 33 23 43 53 ・・・のような一行を配列に格納するやり方と、配列に格納後、2列ずつファイルに出力するアルゴリズムが 分かりません。
そんな難しく考える必要はありません。
#include <stdio.h>
int main(void)
{
int n = 0;
int c;
while ((c = getchar()) != EOF)
{
if (c == ' ' && ++n == 2)
{
n = 0;
c = '\n';
}
putchar(c);
}
return 0;
}
こんな感じで十分でしょう。