#include <stdio.h>
#include <stdlib.h>
int main() {
char card_name[3];
puts("Enter the card name");
scanf("%2s", card_name);
int val = 0;
if (card_name[0] == 'K') {
val = 10;
}
else if (card_name[0] == 'Q') {
val = 11;
}
else if (card_name[0] == 'J') {
val = 10;
}else if (card_name[0] == 'A') {
val = 11;
}
else {
val = atoi(card_name);
}
printf("The card value is: %i\n", val);
return 0;
}
所以基本上我不明白为什么该代码仅适用于'A'
的原因,尽管据我所知"A"
是相同的,因为它也表示一个字符,所以如果我放{{1} }应该可以,但是不能,结果不是11,而是0。