質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual C++

Microsoft Visual C++はWindowsのCとC++の統合開発環境(IDE)であり、コンパイラやデバッガを含んでいます。

while

Whileは多くの言語で使われるコントロール構造であり、特定の条件が満たされる限り一連の命令を繰り返し実行します。

ソート

複数のデータを、順序性に従って並べ替えること。 データ処理を行う際に頻繁に用いられ、多くのアルゴリズムが存在します。速度、容量、複雑さなどに違いがあり、高速性に特化したものにクイックソートがあります。

ポインタ

ポインタはアドレスを用いてメモリに格納された値を"参照する"変数です。

Q&A

0回答

628閲覧

do whileを使って逆ソートでファイルから入出力がしたいです

yamatoa

総合スコア0

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual C++

Microsoft Visual C++はWindowsのCとC++の統合開発環境(IDE)であり、コンパイラやデバッガを含んでいます。

while

Whileは多くの言語で使われるコントロール構造であり、特定の条件が満たされる限り一連の命令を繰り返し実行します。

ソート

複数のデータを、順序性に従って並べ替えること。 データ処理を行う際に頻繁に用いられ、多くのアルゴリズムが存在します。速度、容量、複雑さなどに違いがあり、高速性に特化したものにクイックソートがあります。

ポインタ

ポインタはアドレスを用いてメモリに格納された値を"参照する"変数です。

0グッド

1クリップ

投稿2020/07/25 11:13

前提・実現したいこと

ファイルdarafile.txtからデータ行を順に読み込み、それらのデータ行を逆順でファイルに再び書き込むために用いられている。
全ての行に長さは200字以下に限定されていることに注意すること。
「ソースコード1に初期状態の問題、ソースコード2に穴埋め後の問題を張っておきます。」

発生している問題・エラーメッセージ

穴埋め問題なのですが、逆順にするプログラムを(4)(13)に入力するはずなのですが、そのグラムが分かりません。どうしたらよいでしょうか?

該当のソースコード

C言語
ソースコード1

#include<stdio.h>
(1)
(2)
/--------------------------------------------------/
int main(void)
{
char D[100]; /データ行を格納する変数/
int n; /実際に存在している行の本数/
n = read_lines(D);/データをファイルから入力/
store_lines(D, n);/データをファイルに出力/
return (0);
}
/
---------------------------------------------------*/
int read_lines(char *A[])
{
FILE fp;
char c, i = 0;
(3)............
do {
(4)............
c = fgets((5)....., (6)......, (7)......);
i++;
} while ((8).....);
fclose(fp);
return ((9)......);
}
/
------------------------------------------------------
/
void store_lines((10)........., (11).............)
{
FILE *fp;
char *c, i;
(12).......
(13).......
fputs((14).....(15).....);
fclose(fp);
}

ソースコード2
#include<stdio.h>
int read_lines(char a[]);
void store_lines(char b[], int c);
/
--------------------------------------------------
/
int main(void)
{
char D[100]; /データ行を格納する変数/
int n; /実際に存在している行の本数/
n = read_lines(D);/データをファイルから入力/
store_lines(D, n);/データをファイルに出力/
return (0);
}
/
---------------------------------------------------*/
int read_lines(char *A[])
{
FILE *fp;
char c, i = 0;
fopen_s(&fp, "datafile.txt", "r");
do {
c = fgets(A,100-1,fp);
i++;
} while (i != EOF);
fclose(fp);
return (i-1);
}
/
------------------------------------------------------
/
void store_lines(char *b[], int n)
{
FILE *fp;
char *c, i;
*c = n;
fopen_s(&fp, "datafile.txt", "a");

fputs(c,fp); fclose(fp);

}

試したこと

穴埋問題なので、新たに箱を用意することもインクルードすることもできないため、自分ではどうにもできないです。

補足情報(FW/ツールのバージョンなど)

Visual Studio 2017

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問