这个c++ 程序理解不了 if后面没有else啊……

来源:百度知道 编辑:UC知道 时间:2024/06/10 04:03:10
//判断一个数是否为回文数
#include <iostream.h>

void main()
{
int x,y,z,m;
while(1)
{
cin>>x;
if(x==0) break;
y=0;
z=x;
while(z)
{
m=z%10;
y=y*10+m;
z=z/10;
}//循环中实现的功能为将原来的数逆向组成一个新的数赋给y
cout<<"x="<<x<<" y="<<y<<endl;

//将新数和原来的数进行比较,如果相同则为回文数,否则不是回文数
if(y==x) cout<<"该数是一个回文数"<<endl;
else cout<<"该数不是一个回文数"<<endl;

}
}

if后面不 必须跟ELSE啊...不跟ELSE,不满足IF就直接往下执行了...满足if就BREAK了!

因为满足x为0的条件就退出循环了,不可能执行到后面的语句,所以不用加else

if后面不一定要有else 只要符合逻辑就行 欢迎交流

if (x==0) break;这是一整句,如果条件成立直接跳出外层循环.条件不成立接着执行下面的程序.和有没有else没有关系.