【有错误版HELP!HELP!】第二学期第二周项目5--点结构体与枚举

来源:互联网 发布:淘宝宁夏中宁枸杞 编辑:程序博客网 时间:2024/05/02 00:13
/* * Copyright (c) 2013, 烟台大学计算机学院 * All rights reserved. * 作    者:  沈远宏 * 完成日期:2014 年  03月 09日 * 版 本 号:v1.0 * 问题描述:读程序写出函数的定义,注意其中枚举类型的用法 */#include <iostream>#include <cmath>using namespace std;enum SymmetricStyle {axisx,axisy,point};//分别表示按x轴, y轴, 原点对称struct Point{    double x;  // 横坐标    double y;  // 纵坐标};double distance1(Point, Point);   // 两点之间的距离//修改这里就会正确!!!!!!!!!double distance0(Point );//p1到原点的距离Point symmetricAxis(Point,SymmetricStyle);   //返回对称点int main( ){    Point p1= {1,5},p2= {4,1},p;    cout<<"两点的距离为:"<<distance(p1,p2)<<endl;    cout<<"p1到原点的距离为:"<<distance0(p1)<<endl;    p=symmetricAxis(p1,axisx);    cout<<"p1关于x轴的对称点为:"<<"("<<p.x<<", "<<p.y<<")"<<endl;    p=symmetricAxis(p1,axisy);    cout<<"p1关于y轴的对称点为:"<<"("<<p.x<<", "<<p.y<<")"<<endl;    p=symmetricAxis(p1,point);    cout<<"p1关于原点的对称点为:"<<"("<<p.x<<", "<<p.y<<")"<<endl;    return 0;}// 求两点之间的距离double distance(Point p1,Point p2){    double d;    d=sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y));    return d;}// 求点到原点的距离double distance0(Point p){    double d;    d=sqrt(p.x*p.x+p.y*p.y);    return d;}// 求对称点Point symmetricAxis(Point p1,SymmetricStyle style){    Point p;    switch(style)    {    case axisx:        p.y=-(p1.y),p.x=p1.x;        break;    case axisy:        p.x=-(p1.x),p.y=p1.y;        break;    case point:        p.y=-(p1.y),p.x=p1.x;        break;    }    return p;}


调试结果:

心得体会:

这个项目纠结了好久,就是搞不明白为什么会报错。

0 0
原创粉丝点击