c#,case 语句 出错:无法将类型bool装换为int
刚刚学c#switchcase语句比较2个数的大小inti,j,t;Console.WriteLine("请输入数字i:");Console.WriteLine("请输入...
刚刚学c# switch case语句 比较2个数的大小
int i, j,t;
Console.WriteLine("请输入数字i:");
Console.WriteLine("请输入数字j:");
i = Console.Read();
j = Console.Read();
t = i - j;
switch (t)
{
case t>0:
Console.WriteLine("i大于j");
break;
case t<0:
Console.WriteLine("i小于j");
break;
default:
Console.WriteLine("i等于j");
break;
编译错误提示:无法将类型bool隐式装换为int 展开
int i, j,t;
Console.WriteLine("请输入数字i:");
Console.WriteLine("请输入数字j:");
i = Console.Read();
j = Console.Read();
t = i - j;
switch (t)
{
case t>0:
Console.WriteLine("i大于j");
break;
case t<0:
Console.WriteLine("i小于j");
break;
default:
Console.WriteLine("i等于j");
break;
编译错误提示:无法将类型bool隐式装换为int 展开
展开全部
你switch什么数据类型 case 就用什么数据类型
你这里用 if...else if ...else 语句比较好,即:
int i, j,t;
Console.WriteLine("请输入数字i:");
Console.WriteLine("请输入数字j:");
i = Console.Read();
j = Console.Read();
t = i - j;
if(t>0)
Console.WriteLine("i大于j");
else if(t<0)
Console.WriteLine("i小于j");
else
Console.WriteLine("i等于j");
追问
书上的题目是用switch 语句来比较2个数的大小,用switch的话改如何修改?
追答
int i, j, t;
Console.WriteLine("请输入数字i:");
Console.WriteLine("请输入数字j:");
i = Console.Read();
j = Console.Read();
t = i - j;
switch (t < 0)
{
case true:
Console.WriteLine("i大于j");
break;
case false:
Console.WriteLine("i小于j");
break;
default:
Console.WriteLine("i等于j");
break;
}
展开全部
case 后面不能跟表达式
就是说你写的 case t>0:是错的
就是说你写的 case t>0:是错的
更多追问追答
追问
该如何修改呢
追答
别用switch,改用if判断。
switch只能判断变量。
如 :
int i
switch(i)//这里i是int类型,所以case后面就只能跟数字
{
case 1: ......
case 2:.....
}
char ch;
switch(ch)//这里ch是char类型,所以case后面只能跟 字符
{
case 'a':......
case 'b':......
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
switch(参数),case后面是参数的值,而不是一个判断语句
追问
如何修改?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
case标签必须是常量
追问
如何修改?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询