📌  相关文章
📜  C程序使用图形创建房屋

📅  最后修改于: 2021-05-28 03:25:00             🧑  作者: Mango

先决条件: graphics.h,如何在CodeBlocks中包含graphics.h?

任务是编写C程序以使用图形创建房屋。

要运行该程序,我们包含以下头文件:

#include 

设置环境:

  1. 从此链接下载WinBGlm zip文件。
  2. WinBGlm zip解压缩到任何所需的目录,如下所示:
  3. 复制头文件graphic.hwinbgim.h并将这些文件粘贴到Program Files-> CodeBlock-> MinGW-> Include_folder文件夹中
  4. 还复制libbgi.a并粘贴到文件夹Program Files-> CodeBlock-> MinGW-> lib_folder中
  5. 在此之后,打开您的Code :: Blocks并转到设置->编译器->链接器设置,如下所示:
  6. 添加新文件并浏览libbgi.a可用的文件,即lib文件夹。
  7. 然后在其他链接器选项中粘贴:“ lbgi lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32 ”,单击“确定”,然后从Code :: Blocks退出。

方法:我们将在几条直线和矩形的帮助下创建房屋。步骤如下:

  1. 我们将通过向line()函数传递4个数字来在图形中画一条线:
  2. 通过将4个数字传递给rectangle()函数,我们将在图形中绘制一个矩形:
  3. setfillstyle()函数可设置使用图形在C程序中创建的任何形状的任何填充图案。
  4. floodfill()函数用于以任何颜色填充封闭区域。

下面是上述方法的实现:

// C program to draw a house using
// graphics.h library
#include 
#include 
#include 
  
// Driver Code
void main()
{
    // Initialize of gdriver with
    // DETECT macros
    int gdriver = DETECT, gmode;
  
    // Initialize structure of
    // the house
    initgraph(&gdriver, &gmode, "");
  
    // Create lines for structure
    // of the House
    line(100, 100, 150, 50);
  
    line(150, 50, 200, 100);
  
    line(150, 50, 350, 50);
    line(350, 50, 400, 100);
  
    // Draw rectangle to give proper
    // shape to the house
    rectangle(100, 100, 200, 200);
    rectangle(200, 100, 400, 200);
    rectangle(130, 130, 170, 200);
    rectangle(250, 120, 350, 180);
  
    // Set color using setfillstyle()
    // which take style and color as
    // an argument
    setfillstyle(2, 3);
  
    // Fill the shapes with colors white
    floodfill(131, 131, WHITE);
    floodfill(201, 101, WHITE);
  
    // Change the filling color
    setfillstyle(11, 7);
  
    // Fill the shapes with changed colors
    floodfill(101, 101, WHITE);
    floodfill(150, 52, WHITE);
    floodfill(163, 55, WHITE);
    floodfill(251, 121, WHITE);
  
    // Close the initialized gdriver
    closegraph();
}

输出:
以下是上述程序的输出:

想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。