通过一学期对C语言的学习,我感觉学习C语言是有一定难度却又是非常有趣的科目。也是很有帮助的,特别是对将要面对的计算机二级考试。 这段时间的学习我知道了C语言的基本特点有以下几点:
创新互联建站-专业网站定制、快速模板网站建设、高性价比福山网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式福山网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖福山地区。费用合理售后完善,十余年实体公司更值得信赖。1.语言简洁,使用灵活方便。
2.运算符丰富,表达能力强。
3.数计类型丰富。
4.目标程序质量高,具有面向硬件系统的特点。
5.具有结构化的控制语句和模块化的程序结构。
6.具有编译预处理功能。
7.程序设计自由度大,可移植性好。
这段时间学习使我掌握了:
一、 我学习了C语言的数据类型、常量与符号常量、变量、C语言的运算符和表达式、赋值运算符和赋值表达式、自增自减运算符以及逗号表达式等。
二、 这章介绍了结构化程序的三种基本结构、C语句概述、数据输出包括字符输出函数putchar()和格式输出函数printf()、数据输入包括字符输入函数getchar()和格式输入函数scanf(),还有一些简单的C语程序设计举列等。
前几天一直在看C++语法,所以对一些比较实际的例子总感到比较抽象,但是那也是一个必需阶段,可能大家和我的学习方式不一样,但从刚接触程序到现在来看,发现这样学习语言的方法挺不错的。
经过第一阶段对语法的学习,我觉得实例阶段应该是一个过渡阶段吧,通过前一阶段对语法的学习之后,可能有很多概念我们都比较模糊,或者说很多东西太抽象了,这就为我们第二个阶段的学习做好了实例化的准备,可以这样说吧,第一个阶段就我们为我们的学习一样东西而构建的一个类,里面讲了我们应该在这里面要做什么?第二阶,也就是本阶段,我们就应该去把前一段的东西具体化(实例化先前创建的类),那怎么个具体化呢,呵呵!说白了,去练习一些小例子,从网上下载的电子书上有很多这方面的例子的,如果有自己去书店买书的话,里面也应该提供了不少,里面的例子,我是每次都打了一遍,也许有的人不会亲自去用手打一遍,什么copy等,当然这样也行,但我个人认为,对于初学者来说,最好还是自己动手打一遍比较好,毕竟这些东西对我们来说,都比较陌生,如果每个字都自己打完的话,有些代码你不想记住也难了,在这里,我们得弄懂练习的每一个例子,如果能把一些例子稍稍修改,弄懂里面精髓的东西,让自己知道为什么这样做,那么是最好不过的了,我平时练习时,这一步是少不了的,都习惯了,所以也就成了条件反射,想不这样都不行。最后,我们就应该汇一下总,把前面做过的例子里所用的技术理一下,再做一个比较大的例子,尽量把到目前为止所懂的知识全部应用到里面去,只是尽量,当然有些东西是不能集成到一起的,也是是代码之间的排斥性。
这是个人的一点学习心得,希望能更好的运用到学习中去。C语言是一门很有用的、对于我们的就业很实际的语言,学习好C语言是一项必须而实际的任务。我们必须要好好掌握。
#include
#include
#include
#include
#define N 35
void print(int [][N]);//输出函数
void movebul(int [][N]);//×××移动函数
void movepla(int [][N]);//敌机移动函数
void setting(void);//设置函数
void menu(void);//菜单函数
int scr[22][N]={0},pl=9,width=24,speed=2,density=50,score=0,death=0;//全局变量:界面、我机初始位、界面宽度、敌机速度、敌机密度、得分、死亡
main(void)
{
menu();
int i=0,j=0;
scr[21][pl]=1;
scr[0][5]=3;
while(1){if(kbhit())switch(getch())//控制左右移动和进入菜单
{case 'a':case 'A':if(pl>0)scr[21][pl]=0,scr[21][--pl]=1;break;
case 'd':case 'D':if(pl break; case 'w':case 'W':scr[20][pl]=2;break;case 27 :setting(); break; } if(++j%density==0)//控制生产敌机的速度 {j=0;srand(time(NULL)); scr[0][rand()%width]=3; } if(++i%speed==0)//控制敌机移动速度,相对于×××移动速度 movepla(scr); movebul(scr); print(scr); if(i==30000)i=0;//以免i 越界 } } void print(int a[][N]){system("cls"); int i,j; for(i=0;i<22;i++){a[i][width-1]=4; for(j=0;j if(a[i][j]==1)printf("\5");//输出我机的符号 if(a[i][j]==2)printf(".");//××× if(a[i][j]==3)printf("\3"); //输出敌机符号 if(a[i][j]==4)printf("|"); if(i==0&&j==width-1)printf("得分:%d",score);//右上角显示得分 if(i==1&&j==width-1)printf("死亡:%d",death); if(i==2&&j==width-1)printf("设置:Esc"); if(i==3&&j==width-1)printf("Copyright:杜鑫达"); } printf("\n"); } } void movebul(int a[][N]){int i,j; for(i=0;i<22;i++) for(j=0;j { if(i==0&&a[i][j]==2)a[i][j]=0;if(a[i][j]==2) { if(a[i-1][j]==3)score+=10,printf("\7"); a[i][j]=0,a[i-1][j]=2; } } } void movepla(int a[][N]) { int i,j; for(i=21;i>=0;i--)//从最后一行往上是为了避免把敌机直接冲出数组。 for(j=0;j { if(i==21&&a[i][j]==3)a[i][j]=0;//底行赋值0 以免越界。 if(a[i][j]==3)a[i][j]=0,a[i+1][j]=3; } if(a[20][pl]==3&&a[21][pl]==1)death++; } void setting(void) { int sw=0,i,j; system("cls"); do{sw=0;printf("\n 游戏界面的大小:1.大2.小>> "); switch(getche()) { case '1':width=34;break; case '2':width=24;break; default:printf("\n 错误,请重新选择...\n"); sw=1; } } while(sw); do { sw=0; printf("\n 请选择敌机密度:1.大2.中3.小>> "); switch(getche()) { case '0':density=10; break; case '1':density=20; break;case '2':density=30; break;case '3':density=40;break; default:printf("\n 错误,请重新选择...\n"); sw=1; } } while(sw); do { sw=0; printf("\n 敌机的飞行速度:1.快2.中3.慢>> "); switch(getche()) { case '1':speed=2; break; case '2':speed=3; break; case '3':speed=4; break; default:printf("\n 错误,请重新选择...\n"); sw=1; } } while(sw); for(i=0;i<22;i++) for(j=0;j<45;j++) scr[i][j]=0; scr[21][pl=9]=1; printf("\n 按任意键保存..."); getch(); } void menu(void) { printf("说明:按A D 控制我机左右飞行,W 发射×××\n 设置:请按Esc\n 开始游戏:任意键\n by yan_xu"); if(getch()==27)setting(); } 飞机游戏中就用到了我们许多学到的知识 像if语句 switch语句 case语句 等等 而飞机游戏的结构很简单先设置函数 再设置变量 之后再设置输入变量 最后输出 创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。
分享名称:C语言程序的基本语句能完成功能的体会杜鑫达-创新互联
浏览地址:http://cdweb.net/article/pecid.html