我試圖代碼非常簡單的代碼,在這裏它是:築巢「如果」語句不工作
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int age;
char gender;
printf("How old are you? \n");
scanf("%d", &age);
printf("What is your gender? (m/f) \n");
scanf("%c", &gender);
if ((age >= 18 && gender == 'm')){
printf("You may enter this website ");
if (age <= 20)
{
printf("dude.");
}
}
if ((age >= 18 && gender == 'f')) {
printf("You may enter this website ");
if (age <= 20)
{
printf("young lady.");
}
}
else if (age < 18)
{
printf("Nothing to see here! \n");
}
return 0;
}
在上面的代碼中,我試圖用一個嵌套if
聲明。但它不起作用,並非如我所願。進入這個年齡後,它會打印出這個句子:你的性別是什麼? (M/F)。
當第二個句子打印出來時,它終止。但我不知道爲什麼。 我希望用戶能夠輸入性別,並根據輸入的性別和年齡,打印出一個句子。
你能給我一個提示嗎?
一個''一個聲明if'塊將裏面做之開關語句... – t0mm13b
我投票關閉此問題作爲題外話,因爲類似的問題在這裏回答了100000次。 OP沒有顯示任何調試工作 - 足以在第二次scanf和** think **之後查看變量中的內容。發佈這個問題應該是最後的手段,而不是第一個 –