[英]Prints only “An error occurred in the program!”
#include <stdio.h>
int main(){
int age;
char gender;
printf("Are you male or female (m/f)?");
scanf("%c",&gender);
printf("Enter your age:");
scanf("%d",&age);
printf("\n");
if(gender=="m"){
if(age>=0 && age<=55){
printf("You are a man in your best years!\n");
}
else if (age>=56 && age<=100){
printf("You are a wise man!\n");}
else{
printf("An error occurred in the program!");}
}
else if(gender=="f"){
if(age>=0 && age<=55){
printf("You are a beauty!\n");
}
else if (age>=56 && age<=100){
printf("You look young for your age!\n");}
else{
printf("An error occurred in the program!");}
}
else{
printf("An error occurred in the program!");}
return 0;
}
該程序無法正常運行。 它僅打印最后的else語句,即“程序中發生錯誤!”。 我還嘗試將所有條件放在同一小括號中
喜歡:
if(gender=="f"&& age>=0 && age<=55))
但仍然沒有輸出預期的結果。
您正在將char
與string
文字(gender == "m")
。 雙引號用於字符串。 在m (gender == 'm')
和f (gender == 'f')
周圍使用單引號。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.