求高手帮忙弄一个C语言课程设计,80到100行,核心语句50行,用TC,不需要太复杂。

最好新颖点,别弄什么学生成绩管理系统,图书管理,停车管理,小游戏,通讯录之类的,一定要测试能运行啊,谢谢各位了。

#include "stdio.h"
#include "graphics.h"
#include "math.h"

void Draw(int color);

int t_x=320,t_y=240,t_r=40; /* SUN太阳参数,圆心坐标及半径 */
int d_x,d_y,d_r=20; /* D地球参数 */
int y_x,y_y,y_r=5; /* Y月亮参数 */

int j_x,j_y,j_r=8; /* J星参数 */
int m_x,m_y,m_r=10; /* M星参数 */
int s_x,s_y,s_r=4; /* S星参数 */

float th1=0,th2=0,th3=0,th4=0,th5=0;/* 各星相对太阳的角度 */

main()
{
int gd=DETECT,gm;

int key=0; /* 保存键盘值?*/
int i;
float r;
initgraph(&gd,&gm,"");

Draw(12); /* 先画一个 */
while(key!=0x11b) /* 如果按键==ESC键则退出 */
{
Draw(0); /* 用背景色把画好的图洗掉 */
if(bioskey(1)) /* 如果有按键?*/
{
key=bioskey(0); /* 取得按键的值 */
if(key==0x4b00) t_x-=10; /* 向上方向键 */
if(key==0x4d00) t_x+=10; /* 向下方向键 */
if(key==0x4800) t_y-=10; /* 向左方向键 */
if(key==0x5000) t_y+=10; /* 向右方向键 */
}
th1+=0.001256; /* 各星按角度移动 */
if(th1>=6.28) th1-=6.28; /* 如果转了一圈,按0角度从新计算 */
th2+=0.01256;
if(th2>=6.28) th2-=6.28;
th3+=0.002512;
if(th3>=6.28) th3-=6.28;
th4+=0.000314;
if(th4>=6.28) th4-=6.28;
th5+=0.00628;
if(th5>=6.28) th5-=6.28;
r+=0.5; /* 让太阳半径动态增加 */
if(r>=40) r=20; /* 增大40后用从20从新开始 */
t_r=(int)r;
Draw(12); /* 用颜色12画出图形 */
delay(1000); /* 稍等1秒钟看一下结果 */
}
closegraph();
}

void Draw(int color) /* 画图形 */
{
setcolor(color);
circle(t_x,t_y,t_r); /* 画太阳?*/
outtextxy(t_x-10,t_y-4,"SUN"); /* 显示太阳符号SUN */

d_x=t_x+130*cos(th1); /* 根据太阳位置计算地球位置X */
d_y=t_y+130*sin(th1); /* 根据太阳位置计算地球位置Y */
circle(d_x,d_y,d_r); /* 画地球 */
outtextxy(d_x-4,d_y-4,"D"); /* 显示地球符号D */

y_x=d_x+40*cos(th2); /* 根据地球位置计算月亮位置X */
y_y=d_y+40*sin(th2); /* 根据地球位置计算月亮位置Y */
circle(y_x,y_y,y_r); /* 画月亮 */
outtextxy(y_x-3,y_y-4,"Y"); /* 显示月亮符号Y */

j_x=t_x+60*cos(th3); /* 根据太阳位置计算J星位置X */
j_y=t_y+60*sin(th3); /* 根据太阳位置计算J星位置Y */
circle(j_x,j_y,j_r); /* 画J星 */
outtextxy(j_x-4,j_y-4,"J"); /* 显示J星符号J */

m_x=t_x+200*cos(th4); /* 根据太阳位置计算M星位置X */
m_y=t_y+200*sin(th4); /* 根据太阳位置计算M星位置Y */
circle(m_x,m_y,m_r); /* 画M星 */
outtextxy(m_x-4,m_y-4,"M"); /* 显示M星符号M */

s_x=t_x+230*cos(th5); /* 根据太阳位置计算S星位置X */
s_y=t_y+230*sin(th5); /* 根据太阳位置计算S星位置Y */
circle(s_x,s_y,s_r); /* 画S星,S星太小,所以没有显示符号 */
}
这个希望能用的上,我们也做这个,也是一样的要求
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-30
不同TC行吗?追问

不好意思,我们只学TC了。

追答

那就没办法了 嘿嘿

第2个回答  2011-06-02
额。。。还用TC
相似回答