C语言的基本知识课件

上传人:沈*** 文档编号:253127949 上传时间:2024-11-29 格式:PPT 页数:46 大小:1.63MB
返回 下载 相关 举报
C语言的基本知识课件_第1页
第1页 / 共46页
C语言的基本知识课件_第2页
第2页 / 共46页
C语言的基本知识课件_第3页
第3页 / 共46页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,C语言的基本知识,C语言提要,C语言的语法,C,语言的基本运算及,流程控制语句,控制系统中常用的C语言函数,TC2.0 环境的使用,C程序的编写要求,C语言的语法,-,C语言的特点,程序以函数为单元,并且有且仅有一个主函数 main();,变量的声明和定义必须在函数头部;,语句必须以“;”结束;,注释:/*/,C语言允许直接访问物理地址;可以直接对硬件进行操作;能进行位(bit)操作,C语言的语法,-,C语言的数据类型,整型:,int、short、long,(数据在内存中以2进制形式存放),字符型:,char,浮点型:,float、double,指针:,char*、int*、float*,一维整形数组,:,int a10;数组是有序数据的集合,数组中的每一个元素都属于同一个数据类型,结构体,:,struct,公用体:,union,无符号数,:,unsigned,(,unsigned int;unsigned char),C,语言的基本运算,算术赋值运算,注意:,5/2=2,;,5/2.0=2.5,C,语言的基本运算,位运算,位运算的举例,-,位与运算,规则:,两个运算量中,相应位都是,1,,则该位的结果为,1,,否则为,0,。例:,0 1 0 1 0 1 0 1,0 1 0 1 1 0 1 0,0 1 0 1 0 0 0 0,与,x=0 x55,(),y=0 x5a,(),x&y=0 x50,(),位运算的举例,-,位反运算,规则:,一个运算量的每一位都取反,即将,1,变为,0,,,0,变为,1,。例:,0 1 0 1 0 1 0 1,1 0 1 0 1 0 1 0,反,x=0 x55,(),x=0 xaa,(),位运算的举例,-,移位运算,规则:,对整型操作数中的每一位向右或向左移动,变量一端被移出的位被舍弃,另一端空出的位则以,0,填补,。例:,0 1 0 1 0 1 0 1,0 0 0 0,0 1 0 1,移位,(,舍弃,0101),x=0 x55,(),x 4,0 x05,*,在计算机系统中常常采用移位运算以快速实现乘法和除法的运算,每左移,1,位等效于乘以,2,,每右移,1,位等效于除以,2,。,C,语言的基本运算,关系运算,C语言的流程控制语句(1),if,(表达式)语句1,else,语句2,while,(表达式)语句,do,语句,while,(表达式);,for(i=0;iN;i+),语句,C语言的流程控制语句,选择语句,if,(表达式)语句1,else 语句2,if(c=n|c=N),continue;else return;,C语言的流程控制语句(续),for(i=0;iN;i+),循环体语句,for(i=0;ii),return;,C语言的流程控制语句(2),switch,(表达式),case,常量表达式1:,语句1;,break;,case,常量表达式2:,语句2;,break;,case,常量表达式,n,:,语句n;,break;,default:,语句,n+,1,;,多分支选择语句:当表达式的值与某一个,case,后面的常量表达式的值相等时就执行此,case,后面的语句,若所有的,case,中的常量表达式的值都没有与表达式的值匹配的,就执行,defaut,后面的语句,辅助控制语句,Break语句,多分支选择语句 switch语句,在执行一个case分支后,使流程跳出switch结构,即终止switch语句的执行。可以用一个break语句来达到此目的。实际上break语句用来从循环体内跳出循环体,即提前结束循环接着执行循环下面的语句。,break语句的一般形式为:Break;,Break语句不能用于循环语句和switch语句之外的任何其它语句中。,辅助控制语句,Continue语句,一般形式为:Continue;,其作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定。,continue语句和Break语句的区别是:continue语句只结束本次循环,而不是终止整个循环的执行。而Break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。,C语言的流程控制语句,转移语句,break;,continue;,int n;,for(n=10;n100;n+),if(n%3!=0)continue;,printf(“%5,d,”,n);,return;,goto,表达式,表达式,N,Y,Y,break,continue,N,N,Y,Y,N,break,语句退出循环,continue,结束本次循环,表达式,1,表达式,2,d:,十进制整数,5,:输出字段的宽度,辅助控制语句,Return语句,return语句将被调用函数中的一个确定值带回主调函数中去。,如果需要从被调用函数带回一个函数值(供主调函数使用),被调用函数中必须包含一个return语句,如果不需用被调用函数带回函数值可以不要return语句。,一个函数中可以有一个以上的return语句执行到哪一个return语句,哪一个语句起作用。,return语句后面的括弧也可以不要。,常用的C语言函数(1),标准输入输出:,scan,f,(“格式控制字符串”,地址列表);,例:,scanf,(“%d”,,print,f,(“格式控制字符串”,输出列表);,例:,printf,(“%d n”,a);,I/O端口读写:,Inport,b,(,BASEADDR+6,);/*读I/O端口*/,Outport,b,(,BASEADDR+13,0 x05,);/*写端口*/,format,按,10,进制,整形输出,地址运算符,&+,变量名,n,换行,将当前位置移到下一行开头,bioskey(int cmd),它在,Bios.h,头文件中进行了说明,该函数实际上调用了,BIOS,的,INT16H,中断,参数用来确定,BIOSKEY,()如何操作,键盘控制,Turbo C 2.0 环境,管理文件和目录,装入或保存程序等,进入,Turbo C,的编辑程序,输入和修改源程序,管理多文件工程,设置编译程序和连接程序的各种选择项,设置各种调试选择项,设置断点,在调试阶段以便监视所需的变量,编译、连接和运行装入,Turbo C,环境的当前程序,编译和连接装入,Turbo C,环境的当前程序,Turbo C 2.0 环境,File,:管理文件和目录,装入或保存程序等;,Edit,:进入,Turbo C,的编辑程序,输入和修改源程序;,Run,:,编译、连接和运行装入,Turbo C,环境的当前程序;,Compile,:编译和连接装入,Turbo C,环境的当前程序,;,Project,:管理多文件工程;,Options,:设置编译程序和连接程序的各种选择项;,Debug,:设置各种调试选择项;,Break/Watch,:设置断点,在调试阶段以便监视所需要观察的变量。,Turbo C 2.0 环境的使用,菜单栏,:,Alt+F F10,几个常用的命令,打开:,F3,保存:,F2,编译连接生成,EXE,:F9;,运行,:Ctrl+F9(用AltF5,切换到用户窗口,),调试:,单步:,F8,不可进入函数体,取消,ctrl+F,2,单步,:F7,可进入被调函数体,断点,:Ctrl+F8,观察变量:,Ctrl+F7,Turbo C 2.0 环境的使用,全屏,窗口,模式切换,:Alt+Enter,ALT+X退出,Ctrl+break,跳出,编辑程序,编写程序:打开记事本进行编辑,保存文件名后缀为,TXT,之后在TC,中打开调试,编译时出现:Unable to open input file xxxxx,不能打开输入文件xxxxx(例cos.OBJ),解决办法:1、点右键 另存,2、设路径,3、或者点属性,取消只读文件,编译时出现:Unable to open input file xxxxx,不能打开输入文件xxxxx(例cos.OBJ),解决办法:激活菜单到options derectory E:turboc2.0include,E:turboc2.0lib E:turboc2.0,save,Turbo C 2.0 环境,环境配置文件:,C语言程序的编写和要求,需要解决的问题是什么?,抓住主要问题,把自然语言描述转换为计算机语言描述:,伪代码,如何解决?,理清思路,画出,流程图,记事本上先编写代码,在,TC,环境中调试,模块化编程:主函数中的语句尽量清晰明了,多用子函数来完成功能模块。,程序编写提示,使用帮助:F1 或Ctrl+F1,根据函数说明快速使用,提高程序可读性:,程序模块化,简洁、明了、易读,缩进编写,多写注释,程序调试:,单步执行,加,watch,观察变量,。,例1,main(),.,for(k=0;k.),for(j=0;j.),.,例2,main(),for(k=1,),for(j=1;),.,复合语句配对的括弧要对齐,变量申明,全局变量与局部变量(作用域),int x;,/*x,就是一个全局变量,*/,main(),int y;,/*y,就是一个局部变量,*/,尽量少用全局变量,因为系统为其分配固定的永久存储空间;而系统为局部变量分配动态存储空间。,Int I,/*全局变量*/,main(),int DI_in6,DO_out6,i;,/*局部变量*/,DataInput(参数),ReadPort(参数),WritePort(参数),Control(参数),DataOutput(参数),程序规范,(,例,),/*,屏幕输入模块*,/,/*I/O,端口输入模块*,/,/*I/O,端口输出模块*,/,/*,控制模块*,/,/*,屏幕输出模块*,/,训练内容,完成下列位操作程序代码:,字节byte,位bits8,把一个字节byte分离成8位,存于数组bits8:,void bytetobits(unsigned int byte,unsigned int*bits),把存于数组bits8中的8位合成一个字节byte:,unsigned int bitstobyte(unsigned int*bits),实现方法,void bytetobits(unsigned int byte,unsigned int*bits),int i;,for(i=0;ii),把一个字节,byte,分离成,8,位,存于数组,bits8,main(),int i=0;,clrscr();,while(,!bioskey(1),),i=i+1;,printf(%dn,i);,return;,例,:,循环控制,1.,变量:,全局变量与局部变量;,2.,函数:,屏幕输入,/,输出、,I/O,端口输入输出,控制模块,3.,调试方法:,主函数开始,函数一个一个编,写调试,4.,程序注释,程序规范,作业,阅读附录4 P,136,DI通道程序及DO通道程序,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!