c语言三维坐标函数画图 c语言 坐标

怎样用c语言画函数曲线图/*请不要看完了就走人*/
/*帮帮忙,采纳我的答案!*/
#includestdio.h
#includemath.h
main(){
double
y;
int
x,m,i;
printf("y=sin(x)
[0x2*pi]\n");
for(y=1;y=-1;y-=0.1){
if(y=0){
m=asin(y)*10;
for(x=1;xm;x++)printf("
");
printf("*",m);
for(;x31-m;x++)printf("
");
printf("*\n");}
else{
m=-1*asin(y)*10;
for(i=0;i32;i++)printf("
");
for(x=1;xm;x++)printf("
");
printf("*",m);
for(;x31-m;x++)printf("
");
printf("*\n",m);
}
}
}
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
#defineRGB888(r,g,b)((r0xff) 16 | (g0xff)8 | (b0xff))
#defineRGB565(r,g,b)((r0x1f) 11 | (g0x3f)5 | (b0x1f))
int main()
{
int fd = open("/dev/fb0", O_RDWR);
if(fd0){
perror("open err. \n");
exit(EXIT_FAILURE);
printf("xres: %d\n", info.xres);
printf("yres: %d\n", info.yres);
printf("bits_per_pixel: %d\n", info.bits_per_pixel);
size_t len = info.xres*info.yres*info.bits_per_pixel3;
unsigned long* addr = NULL;
addr = mmap(NULL, len, PROT_WRITE|PROT_READ, MAP_SHARED, fd, 0);
if(addr == (void*)-1){
perror("mmap err. \n");
用c语言写程序,此程序能画出来函数y=2x+5的曲线图形 。此题把数学问题转化为用C语言描述即可c语言三维坐标函数画图,很多画图问题可以使用这种方法 。
假设屏幕左上角为坐标轴原点
也就是把c语言三维坐标函数画图我们c语言三维坐标函数画图的屏幕当作第一象限时,代码如下
#include stdio.h
#defineMAX30// 选定曲线要显示c语言三维坐标函数画图的范围,因为一次函数是一条直线,所以它c语言三维坐标函数画图的显示范围无穷
int main()
{
int x, y;
for (y = 0; yMAX; y++)// 因为我们的光标是向下 , 向右增长 。这里设定y为纵坐标
{
for (x = 0; xMAX; x++)
{
if (y == 2 * x + 5)
{
printf("*");
}
else
{
printf(" ");// 空格,不满足y=2x+5的点
}
}
printf("\n"); // x轴已经到显示范围,所以需要换行 。
}
return 0;
}
2. 更换坐标轴原点显示
#include stdio.h
#defineMAX30// 选定曲线要显示的范围,因为一次函数是一条直线,所以它的显示范围无穷
int main()
{
int x, y;
for (y = 30; y = 0; y--)
{
for (x = 0; xMAX; x++)
{
if (y == 2 * x + 5)
{
printf("*");
}
else
{
printf(" ");// 空格,不满足y=2x+5的点
}
}
printf("\n"); // x轴已经到显示范围,所以需要换行 。
}
return 0;
}
求一个纯C语言绘图函数SDL可以做到 。给c语言三维坐标函数画图你贴个源码c语言三维坐标函数画图:
#includestdio.h
#includestdlib.h
#includeunistd.h
#includeSDL/SDL.h
#includeSDL/SDL_image.h
//函数声明
int Init(void);
SDL_Surface *createScreen(int width,int height,int bpp,Uint32 flags);
void destroyScreen(SDL_Surface *screen);

推荐阅读