考虑两个代码。为什么他们给出不同的输出虽然相同的值已经分配给 i ,'i' 在两个代码中都是一个字符。
第一个代码-->(这里的值直接赋值给i)
void main()
{
char i=3;
clrscr();
switch(i)
{
default : printf("\nHi..\n");
break;
case 1:printf("\na");
break;
case 2:printf("\nb\n");
break;
case 3:printf("\nc");
break;
}
}
第二次使用 printf-scanf--->
void main()
{
char i;
printf("ENTER i");
scanf("%c",&i);
clrscr();
switch(i)
{
default : printf("\nHi..\n");
break;
case 1:printf("\n\na");
break;
case 2:printf("\nb\n");
break;
case 3:printf("\nc");
break;
}
}
在第二个代码中,当我给出 3 作为输入时,我得到“Hi ..”作为输出。是什么让这两个代码的工作方式不同..??