广西电网公司电话:请教一个编程问题(在线等回答)

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/04 05:25:08
#include<iostream>
#include<iomanip>
using namespace std;
int main(){
int a=-7,b;
cin>>b;
if((a=b)>0)cout<<"a>0"<<endl;
if((a=b)<0) cout<<"a<0"<<endl;
return 0;
}
我输入一个"a",怎么输出的是"a<0",而当我输入a的ASC码时,输入的就是"a>0" 为什么啊, 我先谢谢各位的回答

b是一个整型变量,你输入一个字符a给它是无效的.你可以在cin>>b;这句上下各加一句cout<<b<<endl;来观察一下b的值在输入字符a时是否有变化,事实上一直都是一个负数.这个数是在定义变量时就有的一个随机数.

首先输入的是b的值,如果输入的是负数,那么(a=b)表达式的值也是负数,从而输出“a<0";如果输入的是正数,那么(a=b)表达式的值也是正数,从而输出“a>0”。 当输入ASC码时,因为是正数,所以输出“a>0”。

赞同上面的说法!!