質問: (char)val; if ((0 <= val) && (val <= 5)) { printf("0~5を選択しました。\n"); } else if ((6 <= val) && (val <= 10)) { printf("6~10を選択しました。\n"); } return val; } int main(void) { int value; printf("0~10で好きな数字を入力してください\n"); scanf("%d\n", &value); printf("%s\n", answer(value)); return 0; } ```
回答: > > char型の文字列 > > > char型は整数型の一種です。文字列では無いです。 プログラムからやりたいことを想像して書き直すと、 ``` #include char *answer(int val) { if ((0 <= val) && (val <= 5)) { return "0~5を選択しました。\n"; } else if ((6 <= val) && (val <= 10)) { return "6~10を選択しました。\n"; } return "0~10以外を選択しました。\n"; } int main(void) { int value; printf("0~10で好きな数字を入力してください\n"); scanf("%d", &value); printf("%s\n", answer(value)); return 0; } ```