天天看点

惊天地兮泣鬼神,C语言学习库诞生(计算机达人成长之路42) 惊天地兮泣鬼神,C语言学习库诞生 文中涉及的程序实例

附录1:

编写C/C++习作,可以多编写一些趣味程序,即增强能力,又提高兴趣,还便于在老师和同学面前展示,提高关注度。

在前面的章节中,本书已经提出,需要“在Windows SDK API的基础上,专门封装一套函数库,称之为C语言学习库(C-Language Study Libray,简称csl),该库封装了所有Winows下SDK画图的细节,提供了一个与Dos下编程相似的接口,不就两全其美了吗。”现在这个接口正式诞生,一个学习C/C++新的时代正式来临!下面就以Dev-C++为例说明之。

<a target="_blank" href="http://blog.51cto.com/attachment/201104/002302602.jpg"></a>

(以下略......,具体可以参见书籍附录)

附录2:

文中涉及的部分程序提供了源代码和可执行文件的下载。 (在文章末整体打包下载)。

<b>实例1:你好程序员。</b>

打包文件名:test01.rar

程序截图:

<a target="_blank" href="http://blog.51cto.com/attachment/201104/001920276.jpg"></a>

程序代码:

#include "csl.h"  

CSL_BEGIN_DOS  

void cslMain()  

{  

    initgraph(0, 800, 600);  

    outtextxy(300, 300, "大家好!这就是C语言学习库程序!");  

    getch();   

}  

<b>实例2:学习编写CSL程序</b>

打包文件名:test02.rar

<a target="_blank" href="http://blog.51cto.com/attachment/201104/002130849.jpg"></a>

void DrawCommand(int left, int top, int right, int bottom, int i)  

      if (i) setcolor(WHITE);  

      else setcolor(DARKGRAY);  

      line(left,top,left,bottom);  

      line(left,top,right,top);  

      if (i) setcolor(LIGHTGRAY);  

      else setcolor(BLACK);  

      line(left+1,top+1,left+1,bottom-1);  

      line(left+1,top+1,right-1,top+1);  

      if (i) setcolor(DARKGRAY);  

      else setcolor(LIGHTGRAY);  

      line(left+1,bottom-1,right-1,bottom-1);  

      line(right-1,top+1,right-1,bottom-1);  

      if (i) setcolor(BLACK);  

      else setcolor(WHITE);  

      line(left,bottom,right,bottom);  

      line(right,top,right,bottom);  

      bar(left+2,top+2,right-2,bottom-2);  

    initgraph(0, 800, 600);     //初始化窗口函数  

    setbkcolor(LIGHTGRAY);  

    cls();  

    flush(1);       //快速刷新屏幕 ,csl特有函数   

    //画一个按钮控件   

    DrawCommand(100, 200, 360, 260, 1);  

    DrawCommand(380, 200, 640, 260, 0);  

    settextsize(2, 2); //设置字体大小,csl特有函数   

    //字体特技:凹字体   

    setcolor(DARKGRAY);  

    outtextxy(120, 210, "激活的按钮控件");  

    setcolor(WHITE);  

    outtextxy(121, 211, "激活的按钮控件");  

    //字体特技:凸 字体 setcolor(WHITE);  

    outtextxy(400, 210, "按下的按钮控件");  

    outtextxy(401, 211, "按下的按钮控件");  

    setcolor(BLACK);   

    outtextxy(100, 300, "大家好!学习使用CSL库编写C/C++习作。");  

<b>实例3:CSL图形程序展示</b>

打包文件名:demo.rar

<a target="_blank" href="http://blog.51cto.com/attachment/201104/002200407.jpg"></a>

<b>实例4:炮打飞机</b>

打包文件名:pdfj.rar

<a target="_blank" href="http://blog.51cto.com/attachment/201104/002436282.jpg"></a>

<b>实例5:音乐演奏</b>

打包文件名:music.rar

程序截图:略

<b>实例6:俄罗斯方块</b>

打包文件名:rus.rar

<a target="_blank" href="http://blog.51cto.com/attachment/201104/002453498.jpg"></a>

<b>实例7:最小的打字练习</b>

打包文件名:ttnb.rar

<a target="_blank" href="http://blog.51cto.com/attachment/201104/002649436.jpg"></a>

<b>实例8:打字练习</b>

<a target="_blank" href="http://blog.51cto.com/attachment/201104/002523845.jpg"></a>

<b>实例8:汇编语言设计3D动画程序</b>

特别说明:这个程序并非作者原创,而是1997年世界编程大赛第一名的作品。

打包文件名:asm3d.rar

<a target="_blank" href="http://blog.51cto.com/attachment/201104/002900237.jpg"></a>

 本文转自 zhuyunxiang 51CTO博客,原文链接:http://blog.51cto.com/zhuyunxiang/554408,如需转载请自行联系原作者

继续阅读