C言語について質問です。読み取った文字を関数を使って置き換え、それをファイル出力したいのですが、a[10] = change(s)でエラーが出てしまいます。戻り値を設定すれば良いのですがどのように設定すればいいのか分かりません。分かる方お願いします。(pritfでターミナルには置き換えた後の文字は表示できたのですが、そこからどうやってファイル出力に移すのか分かりません)
#include <stdio.h>
#include <stdlib.h>
void tenji(char*);
int main(void)
{
FILE *fin; // 読み込み用
FILE *fout; // 書き込み用
char s[5];
char a[10];
int i;
// 読み込み
if((fin = fopen("report3.txt", "r")) == NULL){
printf("Cannot open the file.\n");
exit(1);
}
// 書き込み
if((fout = fopen("rreport3.txt", "w")) == NULL){
printf("Cannot open the file.\n");
exit(1);
}
// ファイルの読み込み
while(fscanf(fin, "%s", &s) != EOF){
printf("data = %s\n", s);
}
a[10] = change(s);
fprintf(fout, "%s\n", s); //ファイル文字の出力
fprintf(fout,"%s",a); //置き換えた後の出力
// ファイルを閉じる
fclose(fout);
fclose(fin);
return 0;
}
void change(char *x){
int i;
char judge1[] = "O";
char judge2[] = "X";
for ( i = 0; i < 4; i++){
if ("%d",x[i] == 97){
printf("%s%s\n",judge1,judge2);
}
if ("%d",x[i] == 98){
printf("%s%s\n",judge1,judge2);
}
if ("%d",x[i] == 99){
printf("%s%s\n",judge2,judge2);
}
}
}
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
report3.txtにはどのようなデータが設定されてますか。
report3.txtの内容を提示してください。
rreport3.txtには、どのような結果が書き込まれることを期待していますか。
その内容を具体的に提示してください。
文字の置き換えは、どのような文字を、どのような文字に置き換えたいのですか。具体的に提示してください。
No.2
- 回答日時:
> a[10] = change(s)でエラーが出てしまいます。
戻り値を設定すれば良いのですがどのようにchange関数が、
> void change(char *x){
と、戻り値が無い、voidだって作られてるから、エラーになるのでは。
戻り値を返すように、
char change(char*)
として、必要な値をreturnするように変更とか。
No.1
- 回答日時:
if ("%d",x[i] == 97){
printf("%s%s\n",judge1,judge2);
}
if ("%d",x[i] == 98){
printf("%s%s\n",judge1,judge2);
}
if ("%d",x[i] == 99){
printf("%s%s\n",judge2,judge2);
なにこの書き方
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# バイナリファイルをコピーするのにかかる時間を測りたいのですが実行するとFatel error:gli 2 2022/11/03 01:10
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- C言語・C++・C# 宣言する関数の形が決まっている状態で、 str1とstr2の文字列をこの順に引っ付けてstrに保存し 2 2022/05/30 18:21
- C言語・C++・C# c言語配列の結合についてです。 なぜうまくいかないのでしょうか。 #include <stdio.h 4 2022/05/30 22:42
- C言語・C++・C# プログラミング c言語 4 2023/03/07 01:05
- C言語・C++・C# c言語でユーザ関数を利用して入力された文字列を反転させるプログラムを作りたいです。 3 2023/01/29 19:47
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Enterキーを押されたら次の処理...
-
printf による16進表示について
-
C言語でのCSVファイルの読み出...
-
C言語で複数列のデータを1列の...
-
#defineが使用するメモリ領域に...
-
リストの作成と出力(C言語)
-
エラーについて質問です。
-
VC++でSQLへSELECT文を送ったの...
-
C++で指定文字列のカウント方法...
-
【C言語】全角文字の配列を、全...
-
C言語のプログラムで、途中で止...
-
reallocでエラー
-
構造体メンバの初期化
-
char型2つを結合し、short型に...
-
信頼区間の1.96や1.65ってどこ...
-
マイナスからプラスへ転じた時...
-
C言語での引数の省略方法
-
【C++】関数ポインタの使い方
-
2÷3などの余りについて
-
「指定されたキャストは有効で...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Enterキーを押されたら次の処理...
-
C言語で複数列のデータを1列の...
-
printf による16進表示について
-
C言語のプログラムで、途中で止...
-
char型2つを結合し、short型に...
-
矢印キーを押下してコンソール...
-
#defineが使用するメモリ領域に...
-
【C言語】全角文字の配列を、全...
-
終了条件Ctrl+zについて,結果表...
-
空白を含んだ文字列がうまく格...
-
プログラミングの授業の課題です
-
リストの作成と出力(C言語)
-
c言語で文書を読み込み、単語の...
-
構造体メンバの初期化
-
エラーについて質問です。
-
reallocでエラー
-
C言語でのCSVファイルの読み出...
-
なぜ無限ループになるかが分か...
-
Cプログラムについて
-
C++で指定文字列のカウント方法...
おすすめ情報