关于C语言两个程序合成一个,在一个界面中显示


#include <graphics.h>
#include <conio.h>
#include <math.h>
#define PI 3.1415926536
void DrawHand(int hour, int minute, int second)
{double a_hour, a_min, a_sec;
int x_hour, y_hour, x_min, y_min, x_sec, y_sec;
a_sec = second * 2 * PI / 60;
a_min = minute * 2 * PI / 60 + a_sec / 60;
a_hour= hour * 2 * PI / 12 + a_min / 12;
x_sec = int(120 * sin(a_sec)); y_sec = int(120 * cos(a_sec));
x_min = int(100 * sin(a_min)); y_min = int(100 * cos(a_min));
x_hour= int(70 * sin(a_hour)); y_hour= int(70 * cos(a_hour));
setlinestyle(PS_SOLID, NULL, 10);
setcolor(WHITE);
line(320 + x_hour, 240 - y_hour, 320 - x_hour / 7, 240 + y_hour / 7);
setlinestyle(PS_SOLID, NULL, 6);
setcolor(LIGHTGRAY);
line(320 + x_min, 240 - y_min, 320 - x_min / 5, 240 + y_min / 5);
setlinestyle(PS_SOLID, NULL, 2);
setcolor(RED);
line(320 + x_sec, 240 - y_sec, 320 - x_sec / 3, 240 + y_sec / 3);
}
void DrawDial()
{circle(320, 240, 2);
circle(320, 240, 60);
circle(320, 240, 160);
outtextxy(296, 310, "clock");
int x, y;
for (int i=0; i<60; i++)
{ x = 320 + int(145 * sin(PI * 2 * i / 60));
y = 240 + int(145 * cos(PI * 2 * i / 60));
if (i % 15 == 0)
bar(x - 5, y - 5, x + 5, y + 5);
else if (i % 5 == 0)
circle(x, y, 3);
else
putpixel(x, y, WHITE);
}}
void main()
{ initgraph(640, 480);
DrawDial();
setwritemode(R2_XORPEN);
SYSTEMTIME ti;
while(!kbhit())
{
GetLocalTime(&ti);
DrawHand(ti.wHour, ti.wMinute, ti.wSecond);
Sleep(1000);
DrawHand(ti.wHour, ti.wMinute, ti.wSecond);
}
closegraph();
}

第1个回答  2013-12-15
先新建一个工程01,在新建一个C/C++ Source File名为file1.cpp,它被自动添加到工程01中,将第一个程序复制到file1.cpp的窗口中,同样再建一个file2.cpp,写入第二个程序。下一步再组建—编译即可。追问

可以直接写成一个程序吗?具体的程序代码?

追答

用MFC试试

追问

还是有错啊......能帮我调试一下再发给我吗 谢谢!!

第2个回答  2013-12-15
ojzojzozj