| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4876 人关注过本帖
标题:求如何用C语言输出一个椭圆
只看楼主 加入收藏
闫安
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2016-11-30
收藏
 问题点数:0 回复次数:4 
求如何用C语言输出一个椭圆
搜索更多相关主题的帖子: C语言 如何 
2016-12-05 16:12
xzlxzlxzl
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖北
等 级:贵宾
威 望:125
帖 子:1091
专家分:5825
注 册:2014-5-3
收藏
得分:0 
题主要问清楚是用字符拼椭圆还是用图形模式画出精确椭圆。
2016-12-05 16:19
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
收藏
得分:0 
最笨的办法就是挨个printf然后修饰。
2016-12-05 16:19
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
这个,直接用数组确定坐标勉强也能,但排版不会太理想。因为我初步统计过c屏幕显示器一行只占80来个格。椭圆像素基点太大。当然 真的要做可以预先用数学知识确定椭圆边界是否在数组上。如果真的要做,那得另外自己搞一个界面,还是去c#论坛或者图形专区去讨论吧

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-12-05 16:31
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
收藏
得分:0 
回复 楼主 闫安
#include<stdio.h>
#include<math.h>
struct Ellipse
{
    short x1;
    short y1;
    short x2;
    short y2;
    short span;
};
int main()
{
    short right,bottom,i,idx;
    struct Ellipse myEllipse;
    printf("输入焦点1坐标,用逗号隔开:");
    scanf("%d,%d",&myEllipse.x1,&myEllipse.y1);
    printf("输入焦点2坐标,用逗号隔开:");
    scanf("%d,%d",&myEllipse.x2,&myEllipse.y2);
    do
    {
        printf("输入椭圆上的点离两个焦点的距离之和(应大于两个焦点间的距离):");
        scanf("%d",&myEllipse.span);
    }while(myEllipse.span<=sqrt((myEllipse.x1-myEllipse.x2)*(myEllipse.x1-myEllipse.x2)+(myEllipse.y1-myEllipse.y2)*(myEllipse.y1-myEllipse.y2)));
    right=myEllipse.span+myEllipse.x1;bottom=myEllipse.span+myEllipse.y1;
    for(i=0;i<=right;i++)
    {
        for(idx=0;idx<=bottom;idx++)
        {
            if((short)(sqrt((idx-myEllipse.x1)*(idx-myEllipse.x1)+(i-myEllipse.y1)*(i-myEllipse.y1))+sqrt((idx-myEllipse.x2)*(idx-myEllipse.x2)+(i-myEllipse.y2)*(i-myEllipse.y2)))==myEllipse.span)
                printf("*");
            else
                printf(" ");
        }
        printf("\n");
    }
    return 0;
}
//随便瞎弄了一个,不知道是不是这个意思。
2016-12-05 21:35
快速回复:求如何用C语言输出一个椭圆
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015567 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved