比如扑克牌的tjqka,想将其转换为10,11,12,13,14
这样写哪里出问题了?vs总是报错,并且如果只使用a1一个变量则不报错,加上b1了以后就会报错
#include<stdio.h>
char a1, b1; a1为数值,b1为花色 花色姑且用csdh四种表示
int main()
{
scanf_s("%c%c", &a1, &b1);
if (a1 >= 97) //发牌为tjqka时候转换为数字
{
if (a1 == 116) //t转换为10
{
(int)a1;
a1 = 10;
}
if (a1 == 106) //j转换为11
{
(int)a1;
a1 = 11;
}
if (a1 == 113) //q转换为12
{
(int)a1;
a1 = 12;
}
if (a1 == 107) //k转换为13
{
(int)a1;
a1 = 13;
}
if (a1 == 97) //a转换为14
{
(int)a1;
a1 = 14;
}
printf("数值为%d,花色为%c", a1, b1);
return 0;
}
这样无法运行
只输入一个变量则可以运行
#include<stdio.h>
char a1, b1;
int main()
{
scanf_s("%c", &a1); //删去了b1
if (a1 >= 97) //发牌为tjqka时候转换为数字
{
if (a1 == 116) //t转换为10
{
(int)a1;
a1 = 10;
}
if (a1 == 106) //j转换为11
{
(int)a1;
a1 = 11;
}
if (a1 == 113) //q转换为12
{
(int)a1;
a1 = 12;
}
if (a1 == 107) //k转换为13
{
(int)a1;
a1 = 13;
}
if (a1 == 97) //a转换为14
{
(int)a1;
a1 = 14;
}
printf("数值为%d,花色为", a1);
return 0;
}
}