keyone 切换输入法:求教这个程序运行结果①

来源:百度文库 编辑:高考问答 时间:2024/04/24 00:12:42
main()
{int i;
for(i=0; i<3 i++)
switch(i)
{ case1: printf("%d",i);
case2: printf("%d",i);
default: printf("%d",i);
}
}
按照老师给的4个题目,结果发现运行不出结果!
请问是不是过程有什么问题,没有的话结果应该是什么?

011122

程序错了两个地方
for(i=0; i<3 i++)应该是for(i=0; i<3;i++)
case1 应该是case 1
case2同理

011122
同意tullyliu 的观点.程序错了两个地方.
执行的顺序就是依次往下执行.
因为执行相应的第一句后,无break语句来跳出结束后面的执行,这样就造成了还依次执行后面语句的结果.
老师就是让你们理解break语句的重要性,才出这么一个"陷阱",考你们的!

main()
{int i;
for(i=0; i<3 ;i++)此处少一个分号
switch(i)
{ case1: printf("%d",i);
case2: printf("%d",i);
default: printf("%d",i);
}
}
结果应该是0,1,2