紧急求助!!!c语言程序设计!!!急!!!

来源:百度知道 编辑:UC知道 时间:2024/07/06 19:41:33
2、 绘直方图
设计要求:同前面画曲线类似,绘制一个两维坐标,在坐标轴上标出刻度,并用阿拉伯数字标出。按照X轴方向,每隔一个坐标点,绘制一个有一定高度和宽度的矩形,构成直方图。直方图的数据和前面一样由数组给出:int data[]={7,3,12,6,9,5,8,11};
涉及知识:除有图形函数的调用之外,还有矩形图形的绘制/封闭图形的填充等(重点).
相关函数:bar()函数 setfillstyle()函数
谢谢你帮我颜色弄对,还有坐标轴箭头

剩下那些东西你找别人弄把,你不评我也没事。

这块不是太懂,上网找了点资料,帮你修改了一下,大体上实现了你要的东西。 你自己再完善一下吧.

#include <graphics.h>

main()
{ int driver=EGA,mode=1;
int b[]={7,3,12,6,9,5,8,11};
int i,j,xstep=45,ystep=15;
char buffer[10];
initgraph (&driver,&mode,"");/*初始化图形系统*/
gotoxy(30,3);/*调整光标位置,以便为下面的文字输出方位*/
line(40,80,40,1200);/*绘制纵坐标轴*/
line(40,310,540,310);/*绘制横坐标轴*/
j=310;
settextjustify(CENTER_TEXT,CENTER_TEXT);/*设置图形状态下输出文件时的对齐方式为水平居中并且垂直居中*/
for(i=0;i<=12;i++)/*这个循环是在绘制纵坐标的刻度线并输出刻度值*/
{line(20,j,40,j);
itoa(i,buffer,10);
outtextxy(10,j,buffer);
j-=ystep;
}
gotoxy(6,4);
printf("%s","y");/*调整光标坐标到(6,4)外,并输出y*/
j=40;
settextjustify(CENTER_TEXT,TOP_TEXT);/*重新设置文字对齐方式为水平居中和垂直置顶*/
for(i=0;i<=8;i++)
{
setfillstyle(i+1,i+4);/*设置填充模式与颜色*/
line(j,320,j,310);/*绘制横坐标刻度线*/
itoa(i,buffer,10);
outtextxy(j,330,buffer);/*输出横坐