注册 登录
编程论坛 C图形专区

如何用VC++6.0编写一个运行时出现一面飘扬的红旗的程序,打开时同时播放国歌作为背景音乐?

a549827526 发布于 2012-12-25 22:53, 2262 次点击
急用,求懂这个的大神帮帮忙,我C学得不是很好,如果能在一些关键的字段旁边加上详细的注解小女子更是感激不尽。
10 回复
#2
a5498275262012-12-25 23:33
   补充一下,这个红旗是一直在飘动的,在网上也能找到这类的程序,但是都是只能依靠TC来实现,除了VC++之外的程序能实现的话也可以,只要64位系统下能运行就好。我现在只学到谭老师的C语言程序设计第四版的一半,这类画图的函数根本就没学过,希望能在程序旁边注明哪部分的函数是什么用途之类的 ,如果还可以的话最好是能把思路告诉我(好吧,一下子提了那么多要求我都不好意思了),总之哪位大神能给我个程序清单我就很感激了,以上。
#3
赤血之魂2012-12-26 09:31
好像vc中没有这类头文件graphics.h,tc中好像有哦
#4
赤血之魂2012-12-26 09:31
http://code.这里有哦
#5
a5498275262012-12-26 12:00
在网上找到的都是带graphics.h的。。可是我的电脑室64位系统不能兼容TC,我又不会用虚拟机什么的。。所以才各种纠结
有没有不用TC就能实现的?
#6
a5498275262012-12-26 12:27
#include <math.h>
#include <dos.h>
#include <graphics.h>
#define FLAG_X 10
#define FLAG_Y 50
#define FLAG_WID 300
#define FLAG_HI 180
#define WAVE_WID 100
#define WAVE_HI 5
#define BACKCOLOR CYAN
#define FLAGCOLOR RED
int Dy[WAVE_WID]; void InitDy(void)
{
float ang;
int i;
for (i=0;i<WAVE_WID;i++)
{
 ang=(float)i/WAVE_WID*M_PI*2;
Dy[i]=WAVE_HI*sin(ang);
}
}
void DrawFlag(int offset)
{
int x,y,dy;
int i;
setbkcolor(BACKCOLOR);
cleardevice();
setcolor(FLAGCOLOR);
for (i=0;i<FLAG_WID;i++)
{
 x=FLAG_X+i;
dy=Dy[(i+offset)%WAVE_WID];
y=FLAG_Y+dy;
line(x,y,x,y+FLAG_HI);
}
}
void main(void)
{
 int gdriver=EGA,gmode=EGAHI;
int off,curpage,doff=5;
initgraph(&gdriver,&gmode,"");
InitDy();
off=0;
curpage=1;
while(1)
{
if (bioskey(1))
break;
if (curpage==0)
curpage=1;
else
curpage=0;
setactivepage(curpage);
DrawFlag(off);
setvisualpage(curpage);
off+=doff;
if (off>=WAVE_WID)
off-=WAVE_WID;
}
closegraph();
}
我从你给的那个网址上下了个自带graphics.h的VC6,上面这个是我在网上找到的程序。。可是一运行就出现了6个错误,我也看不懂是错在哪。。求大神指点
#7
赤血之魂2012-12-26 13:58
我也不懂, 以前我找了一个补丁装在VC上,之后貌似可以用了,
只有本站会员才能查看附件,请 登录
,我只能帮到这了, 因为我也是新手。
#8
黛玉他哥2012-12-30 22:02
回复 2楼 a549827526
你好,VC下绘图需要学习windows编程中的API函数,如果只是学过C语言,而对windows编程不了解的话 ,在VC下是画不出图的。
#9
shmilyflf2013-01-03 18:37
如果你真的只是刚开始学习编程语言,那就学基础吧,基础是最重要的。我不知道VC6.0中怎么实现这个,但我想一定有办法。TC现在已经用的很少了。C++中的MFC是可以的。
其实界面上的东西都是不难的,主要的还是后面的代码,学会怎么写代码会有N种办法完成你想要实现的效果。
#10
赤血之魂2013-01-09 12:50
回复 9楼 shmilyflf
表示赞同!!
#11
浮云之冰雪2013-05-11 11:54
你们都是高手!
1