编程语言
首页 > 编程语言> > 《C语言及程序设计》实践参考——对称点

《C语言及程序设计》实践参考——对称点

作者:互联网

返回:贺老师课程教学链接

【项目1-对称点】
设计函数,可以按指定的方式,输出一个平面点的对称点
下面给出枚举类型定义和main函数(测试函数),请写出output函数的实现。

#include<stdio.h>
enum SymmetricStyle {axisx, axisy, point};//分别表示按x轴, y轴, 原点对称三种方式
void output(double,double,enum SymmetricStyle);
int main()
{
    double x,y;
    printf("输入点的坐标:");
    scanf("%lf %lf", &x, &y);
    printf("关于x轴的对称点是:");
    output(x,y,axisx);
    printf("关于y轴的对称点是:");
    output(x,y,axisy);
    printf("关于坐标原点的对称点是:");
    output(x,y,point);
    return 0;
}

这里写图片描述

[参考解答]

#include<stdio.h>
enum SymmetricStyle {axisx, axisy, point};//分别表示按x轴, y轴, 原点对称三种方式
void output(double,double,enum SymmetricStyle);
int main()
{
    double x,y;
    printf("输入点的坐标:");
    scanf("%lf %lf", &x, &y);
    printf("关于x轴的对称点是:");
    output(x,y,axisx);
    printf("关于y轴的对称点是:");
    output(x,y,axisy);
    printf("关于坐标原点的对称点是:");
    output(x,y,point);
    return 0;
}

void output(double x,double y, enum SymmetricStyle s)
{
    switch(s)
    {
    case axisx:
        printf("(%.2lf, %.2lf)", x, -y);
        break;
    case axisy:
        printf("(%.2lf, %.2lf)", -x, y);
        break;
    case point:
        printf("(%.2lf, %.2lf)", -x, -y);
        break;
    }
    printf("\n");
    return;
}

标签:%.,output,double,对称点,C语言,printf,程序设计,2lf
来源: https://blog.51cto.com/sxhelijian/2814825