请问下面代码中的switch后面为什么可以带字符(a)?括号里的表达式不是应该是整型变量吗??
#include "stdio.h"#include "math.h"
void main()
{float data1,data2;
char a;
printf("input:");
scanf("%f,%f,%c",&data1,&data2,&a);
switch (a)
{case '+':printf("%f%c%f=%f\n",data1,a,data2,data1+data2);break;
case '-':printf("%f%c%f=%f\n",data1,a,data2,data1-data2);break;
case '*':printf("%f%c%f=%f\n",data1,a,data2,data1*data2);break;
case '/':
{
if (data2==0)
{
printf("不存在\n");
}
else
{
printf("%f%c%f=%f\n",data1,a,data2,data1/data2);
}
}break;
default:printf("无结果\n");
}
}