c作图与图形处理(输出正弦曲线)

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/JKdd123456/article/details/79901288

先说一下 VC模拟TC 和 TC 运行的区别:惊讶
1、
VC 模拟TC 说明:
(1)本系统可以在 win2000/winxp/vista/win7 下完美使用 Turbo C 2.0,包括图形程序。
     所有环境均已经配置好,不用修改。
(2)由于虚拟了 DOS 环境,文件夹 DISK_C 就是 C:\,使用文件路径的时候需要注意。
     例如,图形程序中初始化图形环境的代码:
     int gdriver=VGA, gmode=VGAHI;
     initgraph(&gdriver, &gmode, "C:\\TC20\\BGI");
(3)文件夹说明:
     dosbox  虚拟 DOS 环境的软件 DosBox 0.72
     DISK_C  虚拟的 DOS 环境的 C:\
     TC20         Turbo C 2.0 程序文件
(4)delay比真实的TC中要慢很多倍(约1000倍),相当于原来的sleep
(5)Alt + Enter 可以切换全屏/窗口。
(6)为了使用方便,本软件中的graphic.lib中已经集成了EGAVGA显示驱动程序和trip、
     litt、goth、sans四种英文字体的驱动,使用该graphic.lib编译连接成的exe文件可独立运行,
     不需要机器上有EGAVGA驱动程序,也不需要有四种字体的驱动,但需要在源程序中initgraph
     函数调用前加上以下几行:
    registerbgidriver(EGAVGA_driver);   /*注册登记显示驱动程序*/
    registerbgifont(triplex_font);      /*注册登记英文字体,共四种*/
    registerbgifont(small_font);        /*括号中应为小写*/
    //registerbgidriver(gothic_font);      /*不需要的字体,可以不登记注册*/
    //registerbgidriver(sansserif_font);   /*不需要的字体,可以不登记注册*/
2、VC模拟的TC 下,setcolor  函数后边不能跟数字
好了不废话了,下面就是代码了
#include<graphics.h>
#include<math.h>
#include<conio.h>
#include<stdio.h>
#include<dos.h>
int main()
{
 int gmode,gdriver=DETECT;
 double i,y;
 initgraph(&gdriver,&gmode,"");
//在tc 下直接是“” 在VC模拟的TC下要写成 initgraph(&gdriver,&gmode,"C:\\TC20\\BGI");
 do{
  setcolor(RED);//在TC下可以直接写 颜色代表的数字,在VC下 setcolor 后边不能跟数字,要写字母
  line(0,240,640,240);
  line(650,230,640,240);
  line(650,250,640,240);
  line(320,0,320,480);
  line(310,10,320,0);
  line(330,10,320,0);
  for(i=-50*acos(-1);i<=50*acos(-1);i++)//相当于表示了一个区间 [-2π,2π]
  {
   y=-sin(i/50)*100;//i=-50π 的时候 y=sin(-π)*100=-100 ,但是在作图的时候此时的 应该在240 (x轴)的下方,所以应该变成负的再加 240 代表了 关于 x 轴(240) 对称  
   putpixel(i+320,y+240,BLUE);//画点函数
  }
  delay(500);  
 }while(!kbhit());
 getch();
 closegraph();
 return 0;
}

展开阅读全文

没有更多推荐了,返回首页