VS C++高手进

来源:百度知道 编辑:UC知道 时间:2024/05/28 16:02:05
有一个程序
#include<cmath>
using namespace std;
struct point
{
int x,y;
};
struct RECT
{
point A;
point B;
};
int area(RECT rc)
{
cout<<"请输入矩形左上角坐标:"<<endl;
cin>>rc.A.x >>"\t">>rc.A .y ;
cout<<"请输入矩形右下角坐标:"<<endl;
cin>>rc.B .x >>"\t">>rc.B .y ;
cout<<"矩形面积为:"<<endl;
int S;
S=abs(rc.A .x -rc.B .x )*abs(rc.A .y -rc.B .y );
cout<<S<<endl;
return 0;
}
int main()
{
RECT rc={{rc.A .x ,rc.A .y },{rc.B .x ,rc.B .y }};
area(rc);
return 0;
}
原先不是这样的,RECT rc={{rc.A .x ,rc.A .y },{rc.B .x ,rc.B .y }};
原先上边儿那一句输入的是一个具体的值,但是我想改成自己输入坐标 就写成这个样子了,但是运行之后结果显示没有给rc初始化
首先想说的是我这样做对不对(自己输入坐标)
还有就是该怎样改这个程序
先谢过啦!(*^__^*) ……

编译出错的主要原因是没有包含输入输出流的头文件。

所以会报错。

至于初始化,可以使用memset,将制定的内存置为制定的值,修改后的程序后面使用了

还有一点问题就是不能这样使用cin>>rc.A.x >>"\t">>rc.A .y ; ,编译也通过,但是运行的时候就会出现错误了。

#include<cmath> 

#include <iostream>

using namespace std; 

struct point 

 int x,y; 

}; 

struct RECT 

 point A; 

 point B; 

}; 

int area(RECT rc) 

 cout<<"请输入矩形左上角坐标:"<<endl; 

 cout<<"Point.x = ";

 cin>>rc.A.x ;

 cout<<endl<<"Point.y = ";

  cin>>rc.A.y ; 

  cout<<endl;

 cout<<"请输入矩形右下角坐标:"<<endl; 

 cout<&l