こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

プログラミングの問題です。c言語でお願いします。

プログラミングの質問です。
c言語でお願いします。

以下の結果が得られるようなプログラムを書いてください。

期末試験では必ずフローチャートを書いてください。また、フローチャートが
書けない場合は、どういう順番でプログラムを書けば
よいかを書いてください。

3択の質問を5回行い、その結果によって回答者を3つのグループ
に分ける。(質問、グループは何でも構わない)

プログラミングわからないのでお願いします。

投稿日時 - 2013-12-25 12:46:11

QNo.8400175

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(4)

asanonagiさん、簡単なコーディングで上手にやりましたな。

投稿日時 - 2013-12-26 16:25:15

ANo.3

こんなの?
でも、フローチャートはどうするんだろうか?

----------------------------------------

#include <stdio.h>

struct askType
{
int ans;
char *question;
};

int ask(struct askType a)
{
int yourAns;

puts(a.question);
puts("答をどうぞ 0 or 1 or 2");
scanf("%d", &yourAns);
return (a.ans == yourAns);
}

int getGroup(int rightNumber)
{
switch(rightNumber)
{
case 0:
case 1: return 0;

case 2:
case 3: return 1;

case 4:
case 5: return 2;
}

return -1;
}

int main()
{

struct askType qList[] =
{
{0, "質問No.1 答は 0"},
{1, "質問No.2 答は 1"},
{2, "質問No.3 答は 2"},
{0, "質問No.4 答は 0"},
{1, "質問No.5 答は 1"},
{-1, 0}
};

int i;
int rightNumber = 0;

for(i = 0; qList[i].question; i++)
{
if(ask(qList[i])) rightNumber++;
}

printf("your group No. = %d\n", getGroup(rightNumber));
return 0;
}

投稿日時 - 2013-12-26 08:37:32

試しにVBで行ってからして下さい。
VB無くしていきなりC言語でコーディングを行うのも
抵抗感があります。

C言語は、外国語で言うと、ドイツ語のような物。
VBは、外国語で言う中国語を勉強するような物。

私も自身コーディングが大嫌いです。
特にフローチャートは、匙を投げる感じですね。

頑張ってください。

投稿日時 - 2013-12-25 21:44:56

ANo.1

解らなければ解るまで勉強すれば良いと思うよ☆

解らないのがどこかを教えてね☆

投稿日時 - 2013-12-25 13:00:22

あなたにオススメの質問