C语言程序设计论文

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C语言程序设计论文学校:天津电子信息职业技术学院

系别:电子技术系

专业:通信技术

班级:通信S13-26

学号:89757

姓名:王磊

C语言课程设计报告

一、设计题目:计算器

二、设计目标:进一步加深、巩固学生所学专业课程(《C语言》)的基本理论知识,理论

联系实际,进一步培养学生综合分析问题和解决问题的能力。掌握运用C语言独立地编写、调试应用程序和进行其它相关设计的技能,充分发挥广大同学的潜力,使他们通过本次课程设计而得到全面的锻炼。

三、设计内容:

1.设计系统的功能框图、流程图;

2.编写计算器的源程序代码;

3.上机调试;

4.答辩;

5.书写实习报告。

四、课程设计所用设备:每人一台计算机。

五、课程设计系统组成及模块功能:

(1)主函数模块

(2)设置系统进入图形模块

(3)初始化图形系统模块

(4)计算器计算函数模块

(5)窗口函数模块

(6)设计鼠标图形函数模块

(7)获取特殊键函数模块

六、软件环境:Visual c++6.0

七、课程设计要求:在计算机上操作,通过Visual c++6.0,设计出“计算器”程序。

八、应提交的材料:实习报告一份,内容包含“计算器”程序代码。

设计报告:

程序代码:#include

#include

#include

#include

#include

#include

#include

#include

#include

#define UP 0x48

#define DOWN 0x50

#define LEFT 0x4b

#define RIGHT 0x4d

#define ENTER 0x0d

void *rar;

struct palettetype palette;

int GraphDriver;

int GraphMode;

int ErrorCode;

int MaxColors;

int MaxX, MaxY;

double AspectRatio;

void drawboder(void);

void initialize(void);

void computer(void);

void changetextstyle(int font, int direction, int charsize); void mwindow(char *header);

int specialkey(void) ;

int arrow();

int main()

{

initialize();

computer();

closegraph();

return(0);

}

void initialize(void)

{

int xasp, yasp;

GraphDriver = DETECT;

initgraph( &GraphDriver, &GraphMode, "" ); ErrorCode = graphresult();

if( ErrorCode != grOk )

{

printf("Graphics System Error: %s\n",

grapherrormsg( ErrorCode ) );

exit( 1 );

}

getpalette( &palette );

MaxColors = getmaxcolor() + 1;

MaxX = getmaxx();

MaxY = getmaxy();

getaspectratio( &xasp, &yasp );

AspectRatio = (double)xasp/(double)yasp;

}

void computer(void)

{

struct viewporttype vp;

int color, height, width;

int x, y,x0,y0, i, j,v,m,n,act,flag=1;

float num1=0,num2=0,result;

char cnum[5],str2[20]={""},c,temp[20]={""};

char str1[]="1230.456+-789*/Qc=^%";

mwindow( "Calculator" );

color = 7;

getviewsettings( &vp );

width=(vp.right+1)/10;

height=(vp.bottom-10)/10 ;

x = width /2;

y = height/2;

setfillstyle(SOLID_FILL, color+3);

bar( x+width*2, y, x+7*width, y+height );

setcolor( color+3 );

rectangle( x+width*2, y, x+7*width, y+height );

setcolor(RED);

outtextxy(x+3*width,y+height/2,"0.");

x =2*width-width/2;

y =2*height+height/2;

for( j=0 ; j<4 ; ++j )

{

for( i=0 ; i<5 ; ++i )

{

setfillstyle(SOLID_FILL, color);

setcolor(RED);

bar( x, y, x+width, y+height );

rectangle( x, y, x+width, y+height );

sprintf(str2,"%c",str1[j*5+i]);

outtextxy( x+(width/2), y+height/2, str2);

x =x+width+ (width / 2) ;

}

y +=(height/2)*3;

x =2*width-width/2;

相关文档
最新文档