关于c++程序的问题


#include<iostream>
#include<cstring> 
using namespace std;
int main(){
    char n[51];
    int a=1;
    int s;
    while(cin>>n){
        
        s=strlen(n);
        for(int i=0;i<=s/2;i++){
            if(n[i]!=n[s-i-1]){
                a=0;
                break;
            }
        }
        if(a=1){
            cout<<"Yes"<<endl;
        }
        else {
            cout<<"No"<<endl;
        }
    } 
    
        
return 0;
}


为什么我输啥都是输出Yes

你写成了

if(a=1)

应该是if(a==1)才是你的本意,a=1返回值永远是true

if(a=1)改为if(a==1),结果就对了。