Ⅰ 怎样用c语言画函数曲线图
DOS里面可以直接操作显存,windows里就不行了,尤其是NT系统。建议用GDI获DX吧
Ⅱ 如何用c语言画函数图像
用GDI绘图吧,比较简单。绘图的思想是让x以固定的值在区间内持续增长,比如x=0.1,0.2,0.3.....,以计算出的y值来确定y坐标。用线连接所有的点就行了。MoveTo(),LineTo()函数你用得着,具体情况请自行查看MSDN。
Ⅲ C语言如何画图
framebuffer(帧缓冲)。
帧的最低数量为24(人肉眼可见)(低于24则感觉到画面不流畅)。
显卡与帧的关系:由cpu调节其数据传输速率来输出其三基色的配比。
三基色:RGB(红绿蓝)。
在没有桌面和图形文件的系统界面,可以通过C语言的编程来实现在黑色背景上画图!
用下面的代码,在需要的地方(有注释)适当修改,就能画出自己喜欢的图形!
PS:同样要编译运行后才能出效果。
#include <stdio.h>
#include <sys/mman.h>
#include <fcntl.h>
#include <linux/fb.h>
#include <stdlib.h>
#define RGB888(r,g,b) ((r & 0xff) <<16 | (g & 0xff) << 8 | (b & 0xff))
#define RGB565(r,g,b) ((r & 0x1f) <<11 | (g & 0x3f) << 5 | (b & 0x1f))
int main()
{
int fd = open("/dev/fb0", O_RDWR);
if(fd < 0){
perror("open err. ");
exit(EXIT_FAILURE);
printf("xres: %d ", info.xres);
printf("yres: %d ", info.yres);
printf("bits_per_pixel: %d ", info.bits_per_pixel);
size_t len = info.xres*info.yres*info.bits_per_pixel >> 3;
unsigned long* addr = NULL;
addr = mmap(NULL, len, PROT_WRITE|PROT_READ, MAP_SHARED, fd, 0);
if(addr == (void*)-1){
perror("mmap err. ");
Ⅳ 用C语言绘制曲线
楼上的观珠仔很久不见啦(挺挂念那段时光的)!想不到路过此地看到你,这是高科技呀?你还这么老班牙啊,大考小考把你弄糊涂了,高考顺利呀!别忘了我这位老兄了,C语言略懂 ~~~~~~杰
1.绘制余弦曲线
*程序说明与注释
#include<stdio.h>
#include<math.h>
void main()
{
double y;
int x,m;
for(y=1;y>=-1;y-=0.1) /*y为列方向,值从1到-1,步长为0.1*/
{
m=acos(y)*10; /*计算出y对应的弧度m,乘以10为图形放大倍数*/
for(x=1;x<m;x++) printf(" ");
printf("*"); /*控制打印左侧的 * 号*/
for(;x<62-m;x++)printf(" ");
printf("*\n"); /*控制打印同一行中对称的右侧*号*/
}
}
*运行结果
2.绘制正弦曲线
在屏幕上用“*”显示0-360度的余弦函数sin(x)曲线。
1.
/**//*
sin() line.
62 of line width
*/
#include <stdio.h>
#include <math.h>
int main(void)
...{
int j ,k,d,h;
double i ;
for(i=1.0 ; i> 0.0; i-=0.1)
...{
k = (int)(asin(i)*10) ;
for(j=0; j< k ; j++) /**//*print the left */
printf(\" \");
printf(\"*\");
for( ; j< 31-k ; j++)
printf(\" \");
Ⅳ c语言如何画图
c语言画图 要选对 C语言编程工具。 目前最方便的是“习语言”,它能编译所有C代码,又能在C代码中使用它支持的绘图函数。
也可以使用二十年前的C语言编程工具来绘图,通常是在DOS窗口中绘图。
Ⅵ 怎么用c语言画函数图像
我画了半个正弦函数,其余的你可以照着画,欢迎讨论,
#include "stdio.h"
#include "conio.h"
#include "math.h"
#include "graphics.h"
void main()
{
int driver,mode,i;
driver=DETECT;
mode=0;
initgraph(&driver,&mode,"");
setcolor(15);
for(i=0;i<360;i++)
line(i,200*sin(i*3.14/360),i+1,200*sin((i+1)*3.14/360));
getch();
restorecrtmode();
}
Ⅶ C语言如何画以一维数组为横坐标,和纵坐标的图
dimp(b.length-1)aspoint
foriasinteger=0tob.length-1
p(i).x=b(i)
p(i).y=h-a(i)'这里h是你要绘制曲线的控件的高度
next
然后在窗体或者picturebox的paint事件中:
'画笔
DimblackPenAsNewPen(Color.Black)
'绘制曲线
e.Graphics.DrawLines(blackPen,p)