HELP

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
ryo

HELP

#1

投稿記事 by ryo » 8年前

コード:

//***********************************
//**********マクロ定義**********
//**********************************

#define _CRT_SECURE_NO_WARNINGS 
#define FILENAME_QUESTION "question.txt"//問題
#define FILENAME_RESULT "result.txt"//結果出力
#define MAX_QUESTION (10)//クイズ最大
#define SELECT_ANSWER (4)//選択数
#include<stdio.h>
#include <stdlib.h>

//**********構造体定義**********

typedef struct{
	char aQuestion[256];//問題
	char aSelect[SELECT_ANSWER][256];//解答群
	int nAnswer;//解答
}QUIZ_INFO;

//***********プロトタイプ宣言**********

void Opening(void);//オープニングタイトル
void Input_Question(void);//問題ファイルの読み込み
void Question(void);//解答
void OutputResult(void);//結果ファイル出力

//**********グローバル変数定義**********

QUIZ_INFO quizInfo[MAX_QUESTION];
int nAnswer[MAX_QUESTION];

int main(void)
{
	Opening();
	Input_Question();
	Question();
	OutputResult();
	getchar();
	return 0;
}

void Opening(void)
{
	printf("クイズゲーム\n");
}

void Input_Question(void)
{	
	int cntQuestion;
	
	FILE *fp;
	QUIZ_INFO *pQuiz;
	pQuiz = &quizInfo[0];

	fp = fopen(FILENAME_QUESTION, "rt");
	if (fp == NULL)
	{
		printf("ファイルオープンエラー。");
		exit(-1);
	}
	for (cntQuestion = 0; cntQuestion < MAX_QUESTION; cntQuestion++)
	{
		fscanf(fp, "%s", pQuiz->aQuestion);
		for (cntQuestion = 0; cntQuestion < SELECT_ANSWER; cntQuestion++)
		{
			fscanf(fp, "%s", pQuiz->aSelect);
		}
		fscanf(fp, "%d", &pQuiz->nAnswer);
		pQuiz++;
	}
	fclose(fp);
}

void Question(void)
{
	




void OutputResult(void)
{
	
}



問題を読む→出題する→回答入力→判定という感じに
したいのですがわからないのでソースを教えてほしいです
お願いします。

超初級者
記事: 56
登録日時: 9年前

Re: HELP

#2

投稿記事 by 超初級者 » 8年前

動作の例を挙げてみてください。

ryo

Re: HELP

#3

投稿記事 by ryo » 8年前

*********クイズゲーム*************

問題1 来年のオリンピックの開催地は?
1.ロンドン 2.リオデジャネイロ 3.北京 4.シドニー

答え入力 2

問題を入力したら前に答えた問題はクリアして次の問題を表示

問題2  アメリカの首都は?
1.ワシントン 2.ニューヨーク 3.ロサンゼルス 4.テキサス

答え入力 1

問題3  日本が夏の時、オーストラリアの季節は次のうちどれ?

1.春 2.夏 3.秋 4.冬

答え入力 2

**********解答結果表示**********

問題1正解
問題2正解
問題3不正解 答えは冬です

超初級者
記事: 56
登録日時: 9年前

Re: HELP

#4

投稿記事 by 超初級者 » 8年前

かなり難度が高そうですね。

アバター
little
記事: 44
登録日時: 12年前
連絡を取る:

Re: HELP

#5

投稿記事 by little » 8年前

ここまで出来て本当に実装できないのか疑問ですが、
とりあえず形だけ実装してみました。

※エラー処理、警告、ファイル出力は対応していません。

main.c
► スポイラーを表示
question.txt
► スポイラーを表示
画面消し以外の動作確認

OS:Windows7
環境:Visual Studio2010...ぇ
百聞は~

ryo

Re: HELP

#6

投稿記事 by ryo » 8年前

"result.txt"がないです。

アバター
little
記事: 44
登録日時: 12年前
連絡を取る:

Re: HELP

#7

投稿記事 by little » 8年前

little さんが書きました:※エラー処理、警告、ファイル出力は対応していません。
読めますか...?

期待値を表示出来ている"はず"なので、あとは適当に編集してファイル出力するだけのはずなんですが…


ryo さんが書きました:"result.txt"がないです。
いいから黙って全部やれということでしょうか…?
百聞は~

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: HELP

#8

投稿記事 by softya(ソフト屋) » 8年前

当掲示板では課題の丸投げを禁止させていただいております。
ryoさんの元のコード自体が既に問題として組まれていたものではないか?と推測されますので、この質問は丸投げになっているのではないでしょうか。
littleさんが最大限のヒントで回答をされておりますので、あとは努力していただけませんでしょうか。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

ryo

Re: HELP

#9

投稿記事 by ryo » 8年前

すいません
考えてやってみましたができませんでした
月曜日までなので急いでいます

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: HELP

#10

投稿記事 by softya(ソフト屋) » 8年前

その頑張った途中経過のコードを貼ってもらえればアドバイスが貰えると思います。
コンパイルが通らなくても構いません。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: HELP

#11

投稿記事 by softya(ソフト屋) » 8年前

残念なことですがマルチポストされていると思われるものを発見しました。
http://chiebukuro.yahoo.co.jp/my/myspac ... r=dbwlduhw
当掲示板のルールなのですが、相互リンクをお願いします。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アバター
little
記事: 44
登録日時: 12年前
連絡を取る:

Re: HELP

#12

投稿記事 by little » 8年前

マルチポスト先
教えてくださいC言語500枚
ファイルを読み込んでもおかしな表示をしてしまいます。
分からないので修正したソースを教えてください。

期待出力
► スポイラーを表示
little さんが書きました:画面消し以外の動作確認
ここを見れば入出力時の動作が見えるはずなんですが一応別途記載します

input
► スポイラーを表示
output
► スポイラーを表示

・何処がどう「おかしい表示」なんですか…?
・マルチポスト先の不正解時の表示形式が違いますがどういうことですか…?
・問題も私が作るんですか…?

※OutputResultで想定されるファイル出力(書き込み)は「r」ではないです。
※マルチポスト先のInput_Questionを変更した理由を教えて下さい。

変更前
► スポイラーを表示
変更後
► スポイラーを表示
非表示エリア
この非表示エリアを表示するには、登録し、ログインする必要があります。
百聞は~

ryo

Re: HELP

#13

投稿記事 by ryo » 8年前

"question.txt"に問題
"result.txt"に問題番号 入力した答え 正解か不正解か 正しい答えを
書き込まないといけません。

アバター
little
記事: 44
登録日時: 12年前
連絡を取る:

Re: HELP

#14

投稿記事 by little » 8年前

ryo さんが書きました:**********解答結果表示**********

問題1正解
問題2正解
問題3不正解 答えは冬です
ryo さんが書きました:"question.txt"に問題
"result.txt"に問題番号 入力した答え 正解か不正解か 正しい答えを
書き込まないといけません。

入力した答えを出力する条件が増えているようにしか見えません。

※問題番号 入力した答え 正解か不正解か 正しい答えを出力する状態に変更しました。
※ファイル出力も入れました。

main.c
► スポイラーを表示
question.txt
► スポイラーを表示
result.txt
► スポイラーを表示
input
► スポイラーを表示
output
► スポイラーを表示

改版
百聞は~

閉鎖

“C言語何でも質問掲示板” へ戻る