2020/2/171C语言程序设计入门信息学院计算机系张宇学习这门课的要求每节课必须带书或课堂笔记本每节课都会有几个重要的知识点要求大家一定要记忆和理解的有问题发邮件:yzh@zstu.edu.cn2020/2/1722020/2/173为何学习C语言?哪个操作系统不是C语言写的?Windows,linux,UNIX,Mac,OS/2哪种新型语言不是衍生自C语言?C++,Java,C#,J#,perl语法简洁高效、程序高效、便于描述算法。如果想在程序设计方面有所建树,必须学习C语言2020/2/174学的不是编程,是思想!培养良好的程序设计风格,犹如个人的气质形象!2020/2/175C语言发展历史原型ALGOL60语言,简称A语言63年,发展成CPL语言67年,对CPL简化,产生BCPL语言70年,对BCPL简化,成为B语言72年,在B语言基础上,最终发展出C语言2020/2/176第一个C程序注释文本,/*开头,*/结尾头文件主函数输出函数定义函数返回类型1.任何程序都有主函数2.程序由若干语句组成3.语句由分号“;”结束2020/2/177几个概念头文件#includestdio.hC语言没有输入和输出语句,调用系统库函数中的相关函数。主函数intmain()所有的C程序有且只有一个main()函数主函数结束,程序结束以{开始,以}结束2020/2/178几个概念输出函数printf(“HelloWorld\n”);每个c语言语句都以;结尾\n是换行符return0目的是保证在各个编译器上都能够运行2020/2/179C语言单词标识符字母、数字和下划线组成第一个字符必须是字母或下划线英文字母大小写是有区别的,num和Num不同的标识符保留字(keyword)又称关键字,C语言规定、赋予特定含义和专门用途的标识符与数据类型和语句相关,int2020/2/1710哪些标识符合法?3s_x3BOOK1-3XSum5axboy-1S*T&F52020/2/1711C语言单词用户自定义标识符:变量名、函数名,取有意义的英文单词常量(constant):123,12.34,‘a’,‘HelloWorld!’运算符(operator):+(加),-(减),*(乘),/(除),%(取余)分隔符(separator):例如;#()等2020/2/1712C语言编程环境C-Free3.5:针对C/C++语言的集成化开发环境,浙江省计算机等级考试专用版本特点:颜色区别显示关键字输入提示适合初学者设置字体:工具-编辑器属性2020/2/1713编程流程打开C-Free,新建文件。输入源程序,保存为.c或.cpp文件,文件名起有意义的名字。编译:语法检查,生成二进制代码的目标程序。连接:把程序代码与所需要的其他目标代码,或函数库等连接在一起,生成可执行文件。2020/2/1714好的编程风格标识符的名字要有具体含义一行只写一条语句程序块儿采用缩进风格编写相对独立的程序块,变量说明之后必须加空行多加注释,特别对于复杂程序来说2020/2/1715编程规范2020/2/1716结构化程序设计思想由炒菜想到的任何复杂算法,都由顺序、选择、循环不允许交叉、不允许从一个结构跳到另一个结构2020/2/1717四则运算(3+4)×5÷6-11运行过程2020/2/17182020/2/1719C语言表达式一个C语言表达式是由常量、标识符、运算符和()组成的算式,每个表达式在运行时都可以求值。aacbb242(-b+sqrt(b*b-4*a*c))/(2*a)2020/2/1720求华氏温度对应的摄氏温度温度转换公式:相应C语言表达式:C=(F-32)*5/995)32(FC2020/2/1721常量、变量和数据类型intcelsius,fahr;celsius=5*(fahr-32)/9;数据常量:程序运行中,其值不能被改变变量:程序运行中,其值可以被改变数据类型常量:5和9是整型常量(整数)变量:在定义时指定2020/2/1722算术表达式的求值过程先括号,后负号,再乘除余,最后加减;结合(求值)方向:自左向右;整数除整数,得整数如:1/2=0,9/4=2?5*(fahr-32)/9和5/9*(fahr-32)等价吗%针对整型数据如:5%6=5,9%4=1,100%4=0双目运算符两侧操作数的类型要相同,不同则向上转换。2020/2/1723这个程序对吗?错误提示:7:invalidoperandstobinary%7:代表程序的第7行invalid:无效的,失效的operand:操作数,运算对象binary:二进制的2020/2/17242020/2/1725变量的定义变量定义的一般形式:类型名变量名表;例如:intcelsius,fahr;定义整型变量floatx;定义单精度浮点型变量doublearea,length;定义双精度浮点型变量double型数据比float精度高,取值范围大变量名:小写字母;见名知义2020/2/1726变量的定义定义变量时要指定变量名和数据类型类型名变量名表;intcelsius,fahr;floatx;doublearea,length;变量名代表内存中的一个存储单元存放该变量的值该存储单元的大小由变量的数据类型决定C语言中的变量代表保存数据的存储单元数学中的变量代表未知数x=x+12020/2/1727变量的定义与使用变量必须先定义,后使用。一个变量名只能定义一次变量一般都定义在程序的头不能定义在程序的中间或后面应该先赋值,后引用2020/2/1728赋值运算赋值运算符=赋值表达式:用=将一个变量和一个表达式连接起来的式子变量=表达式例如:fahr=100;celsius=5*(fahr-32)/9;计算赋值运算符右侧表达式的值将赋值运算符右侧表达式的值赋给左侧的变量=的左边必须是一个变量2020/2/1729数值互换程序a=3,b=8运行结果a=8,b=32020/2/1730作业上机熟悉一下编程环境将我上课编写的几个程序,自己试试HelloWorld!四则运算算术式子温度转换数值互换