主题:[转帖]趣味程序导学C语言
blueboy307
[专家分:110] 发布于 2005-08-23 12:50:00
电脑游戏,一个熟悉而诱人的字眼,常常不经意地浮现在我们的脑海当中。有梦幻神奇的《传奇》,有惊险刺激的《反恐精英》,有纯真童趣的《泡泡堂》,还有武林情仇,笑傲江湖的《剑侠情缘online》。它是e时代常谈的话题,是交互式娱乐的主力军,是一种高层次的综合艺术,更是一个民族的文化、世界观的全新传播方式。作为游戏玩家的我们,是不是想设计一个属于自己的游戏呢?
爱玩是人的天性,而C语言是我们计算机专业都要学习的一门基础学科。一般来说,是比较枯燥的。那么,我们能不能通过编一些小游戏来提高它的趣味性呢?这样学习程序设计,就不会是一件艰苦、枯燥的事,它变得象电脑游戏一样充满好奇,富有乐趣。这正是我这个讲座的目的。
1、 总是从Hello,world开始
学习编程的第一个程序,一般就是打印一个亲切的词语——“Hello,world!”。让我们来看看这个最简单的C程序:
#include <stdio.h> /*把输入输出函数的头文件包含进来*/
int main()
{
printf(“Hello, world!”);/*在屏幕上输出字符串“Hello,world!”*/
return 0;/*退出main函数,并返回0*/
}
下面我们发现几个值得改进的地方,1、程序的运行结果一闪而过。2、每执行这个程序一次都能看见上次运行留下的字符。3、我们还希望屏幕输出一个笑脸来欢迎我们。让我们来改进一下这个程序吧!1、在return语句的前面加一句:getch ();,表示按任意键结束。2、在printf语句前用clrscr函数清屏,要使用这个函数和getch函数,需要在程序开头再包含头文件conio.h。3、ASCII码也有许多非常好玩的字符,比如ASCII码值为2的就是一个笑脸,我们可以用printf(“%c”, 2)来输出一个笑脸。
现在我们把Hello,world程序改成一个更好看的Hello,world了。下面让我们开始做游戏吧!
回复列表 (共51个回复)
31 楼
JerryPEN [专家分:10] 发布于 2006-02-19 16:12:00
8楼的连INCLUDE都打错了!
32 楼
jslfl [专家分:80] 发布于 2006-04-10 19:43:00
哪位大哥大姐能把上边几个游戏的具体程序写出来一下啊,我们这些小鸟感激不尽!!!
33 楼
冷月星光 [专家分:16520] 发布于 2006-04-11 19:06:00
不错,有意思,顶下
34 楼
dynamic516 [专家分:3530] 发布于 2006-04-14 22:36:00
中国的游戏产业还是有很多工作要做的,呵呵,学习了。
35 楼
dynamic516 [专家分:3530] 发布于 2006-04-14 22:41:00
[quote]大虾,我是初学者第一次上机,怎么按你所说的第一个Hello,world.就发生错误呀
错误是,Unknown preprocessor directive 'incolude'
我是哪出错了呀,请多指教,谢谢
[/quote]
自己要看看再问:是include,头文件的问题,再次怀疑是你写错了单词和符号!
36 楼
dynamic516 [专家分:3530] 发布于 2006-04-14 23:37:00
错误是,Unknown preprocessor directive 'incolude'
是include吧,非常怀疑拼写错误!
37 楼
聆听海哭泣 [专家分:330] 发布于 2006-04-15 09:33:00
顶!!!!!!!!!!!!!
38 楼
dynamic516 [专家分:3530] 发布于 2006-04-15 18:07:00
楼主值得学习,要是刚学C语言的时候看到这篇文章就不会那么无趣了,学习了。
这个游戏我会求精的。
八楼大哥是你自己输入错误,你到底看没有看过C语言的书啊?#include<stdio.h>
39 楼
7yui9 [专家分:0] 发布于 2006-04-15 20:06:00
厉害哦
40 楼
dynamic516 [专家分:3530] 发布于 2006-04-15 20:31:00
早些时间看见这片文章,C语言也许回会学的更有趣,下面代码就先让笑脸动起来:
#include<bios.h>
#include<stdio.h>
#include<stdlib.h>
int main()
{
int i,j;
clrscr();
while(1){
clrscr();
i=random(80);/*随机位置*/
j=random(80);
gotoxy(i,j);
printf("%c%c%c",2,2,2);
sleep(1);/*延时一秒*/
}
getchar();
return 0;
}
我来回复