教えてください。part2

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

教えてください。part2

#1

投稿記事 by good!! » 15年前

以下の問題のC言語のプログラミングがわかりません。教えてください。
・生まれた月を読み込むプログラムを作成せよ。
尚、以下のプロントタイプ宣言により示される関数を作成し、これを用いること。

int get_month(void);
ここで、関数 get_monthは、月を読み込み、その値を返す関数である。尚、関数 get_monthでは、0以下または13以上の値が入力された場合は再入力を促し、1以上12以下の値が入力されるまで処理を繰り返させること。

たかぎ

Re:教えてください。part2

#2

投稿記事 by たかぎ » 15年前

> 以下のプロントタイプ宣言により示される関数を作成し、

プロントタイプ宣言とは?
それはおいておいて、こんな感じでしょうか?
#include <stdio.h>
#include <stdlib.h>

int get_month(void)
{
	char s[3];
retry:
	if (scanf(" %2[0123456789]", s) == 1)
	{
		long month = strtol(s, NULL, 10);
		if (1 <= month && month <= 12)
			return month;
	}
	scanf("%*[^\n]"); 
	goto retry; 
}

int main(void)
{
  get_month();
}
月を読み込んでどうするかは要求されていませんので、そのまま捨てています。

good!!

Re:教えてください。part2

#3

投稿記事 by good!! » 15年前

ありがとうございました。

閉鎖

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