chat A与chat A=‘A'有什么不同?char A ;\x05\x05switch ( A){\x05 case 'A':printf ("85~100\n");break; default :printf ("输入错误");}为什么chat A换成chat A=‘A'后才是输出85~100?int a; a=1;和int a=a+1;不都一样吗?怎么上面程

来源:学生作业学帮网 编辑:学帮网 时间:2024/05/06 00:53:54

chat A与chat A=‘A'有什么不同?
char A ;\x05
\x05switch ( A)
{\x05
case 'A':printf ("85~100\n");break;
default :printf ("输入错误");
}
为什么chat A换成chat A=‘A'后才是输出85~100?
int a; a=1;
和int a=a+1;不都一样吗?怎么上面程序就不一样?

char A;的意思是申明了一个char型的变量,它的名字叫A,但是里面的值是系统默认分配给char的值.
而char A = ‘A’是说申明了一个char的变量,他的名字叫A,而且给他赋值为‘A’.
所以,在你的程序中.
char A ;\x05//这步完了之后A里面是一个默认的值,而不是‘A’.
switch ( A)
{\x05
case 'A':printf ("85~100\n");break;
default :printf ("输入错误");
}
你说的
int a; a=1;
和int a=a+1; 确实是一样的.
但是,你给的上面的char的例子和这个有区别,你的是
int a; 和int a=a+1;的区别.不一样.
比如你跑这个程序
int a ;\x05
switch ( a)
{\x05
case 1:printf ("85~100\n");break;
default :printf ("输入错误");
}
这个就是对应于你的char的那段程序的对应修改.这样是不是比较容易看懂?肯定是显示输入错误吧?