2--5点结构体与枚举
2014-03-09 16:07
274 查看
/* *程序的版权和版本声明部分: *Copyright(c)2013,烟台大学计算机学院学生 *All rights reserved. *文件名称: *作者:纪丽娜 *完成日期:2013年3月5号 *版本号:v1.0 *对任务及求解方法的描述部分: *输入描述: 已经初始化 *问题描述:点结构体与枚举 *程序输出:点的坐标 *问题分析: *算法设计: */ #include<iostream> #include<cmath>//引用pow的头文件 using namespace std; enum SymmetricStyle {axisx,axisy,point};//分别表示按x轴, y轴, 原点对称 struct Point { double x; // 横坐标 double y; // 纵坐标 }; double distance1(Point p1, Point p2); // 两点之间的距离 double distance0(Point p1); Point symmetricAxis(Point p,SymmetricStyle style); //返回对称点 int main( ) { Point p1={1,5},p2={4,1},p; cout<<"两点的距离为:"<<distance1(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 distance1(Point p1,Point p2) { double d; d=sqrt(pow(p1.x-p2.x,2)+pow(p1.y-p2.y,2));// return d; } // 求点到原点的距离 double distance0(Point p) { double d; d=sqrt(pow(p.x,2)+pow(p.y,2)); //pow(a,b)代表a的b次方! return d; } // 求对称点 Point symmetricAxis(Point p1,SymmetricStyle style) { Point p; if(style==axisx) { p.x=p1.x; p.y=-p1.y; } else if(style==axisy) { p.x=-p1.x; p.y=p1.y; } else { p.x=-p1.x; p.y=-p1.y; } return p; }
心得:不能用distance因为数据库中已经有一个这样的函数!!!
相关文章推荐
- 项目5点结构体与枚举
- 第2周项目5点结构体与枚举
- C-结构体、枚举
- VB.NET入门(五):数组,枚举与结构体
- Swift -- 结构体、类、枚举继承protocol协议
- 结构体,联合体,枚举.sprintf ,结构体变量和指针成员,->含义
- Swift3.0-枚举(enum)和结构体(struct)
- 结构体,枚举,联合
- 自定义类型(结构体,枚举,联合,位段)
- 结构体、共用体和枚举之选夫婿1
- (C基础)结构体,共用体,枚举
- Swift基础语法(五)枚举、结构体与类的区别
- C++ primer plus 第六版课后作业和题——第四章——关于字符串、结构体、共同体、枚举的知识
- 结构体,结构体内存对齐,位段,枚举,联合知识总结
- 自定义类型:结构体、枚举、联合
- Objective C转Swift注意事项(一)合理使用结构体,枚举,extensions
- C语言 枚举(enum)、宏定义(#define)、结构体(struct)的一种联合应用
- 第八章作业,结构体,共用体和枚举
- Swift-枚举和结构体
- swift 笔记 (十一) —— 方法(类,结构体,枚举)