C程序设计教程(第2版)第1章

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

C程序设计教程(第2版)高等学校计算机基础教育教材精选崔武子赵重敏李青编著课程要求课前请做好预习保持课堂安静,头脑清醒,思维活跃认真、独立、按时完成并提交作业重视上机实践,有效利用宝贵的上机时间第1章C语言基础知识1.1C语言概述1.2简单C程序与上机步骤1.3数据类型1.4常量与变量1.5运算符和表达式1.1.1什么是C语言1.1.2C程序形式和程序执行过程1.1C语言概述返回C语言是由附录A(P316)中列出的32个关键字再加上语法规则构成的。e1.c编辑编译e1.obj连接e1.exe运行输出结果1.1.1什么是C语言1.1.2C程序形式和程序执行过程【例1.1】C语言程序示例程序如下:#includestdio.h#includemath.hintmysum(intm,intn);main(){inta,b,x;doublec,y,z;c=4.0;y=sqrt(c);a=10;b=20;x=mysum(a,b);z=x+y;printf(z=%lf\n,z);}intmysum(intm,intn){intk;k=m+n;returnk;}程序的运行结果是:z=32.000000……c=4.0;y=sqrt(c);a=10;b=20;x=mysum(a,b);z=x+y;……main函数……sqrt函数……其它函数文件math.h②③⑤……mysum函数⑦④⑨⑥⑧①格式特点•习惯用小写字母,大小写敏感•不使用行号,无程序行概念•可使用空行和空格•常用锯齿形书写格式main(){……………….…………………………..…………..……………….………………………….……………….………………..}#includestdio.hmain(){inti,j,sum;sum=0;for(i=1;i10;i++){for(j=1;j10;j++)sum+=i*j;}printf(“%d\n”,sum);}优秀程序员的素质之一:使用TAB缩进{}对齐有足够的注释有合适的空行结构特点•函数与主函数•程序由一个或多个函数组成•必须有且只能有一个主函数main()•程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。•程序语句•C程序由语句组成•用“;”作为语句终止符•注释•/**/为注释,不能嵌套,多行注释•//单行注释•不产生编译代码•编译预处理命令组成要素程序主要目的是处理数据•数据的输入•数据处理•数据输出•数据必须先定义后使用对数据的处理是通过流程控制语句进行的1.3数据类型【例1.4】运行程序,观察sum和ave的值#includestdio.hmain(){inta,b,sum;floatave;a=5;b=6;sum=a+b;ave=sum/2;printf(“%d,%f\n”,sum,ave);}sum=11?ave=?5.5?5运行结果:11,5.000000保留六位输出整型输出实型返回说明常用数据类型:整型、实型、字符型、数组、结构体类型、指针类型等一定要选择合适的数据类型使用正确的输出格式说明符1.4常量与变量1.4.1常量与变量的概念1.4.2整型常量与变量1.4.3实型常量与变量返回1.4.1常量与变量的概念【例1.5】编写输出1000和100的和与差的程序。#includestdio.h#defineFIRST1000main(){ints;s=FIRST+100;printf(s=%d\n,s);s=FIRST-100;printf(s=%d\n,s);}都是常量变量s=1100s=900将用FIRST代替1000变量的命名规则由a~z、A~Z、0~9、_组成变量名的第一个字符不能是数字关键字不能作为变量名注意:区分大小写main(){inta,b;a=5;b=6;intsum;sum=a+b;printf(“%d\n”,sum);}下面程序是错误的。变量必须先定义后使用变量名要简单明了、见名知意定义变量inta;制造容器a变量的定义、多次赋值以及输出的全过程不定值a=5;5a=6;6printf(“a=%d”,a);输出a=6注意:a代表存储单元6是存储单元中的内容1.4.2整型常量与变量1.整型常量整型常量不能带小数点%d——十进制形式输出2.整型变量整型变量中只能存放整型数据整型变量的常用类型:基本型int(一般占2个字节)长整型long(一般占4个字节)在VC++环境都占4个字节注意:数据溢出3.变量初始化在定义变量的同时给变量赋值inta=5;inta;a=5;inta=5,b=6;inta,b;a=5;b=6;不能,b没有定义能否改成“;”1.4.3实型常量与变量1.实型常量【例1.9】写出下面程序的运行结果。#includestdio.hmain(){printf(%f\n,123451234512345.1);printf(%e\n,12345.6788885);}123451234512345.090000按小数形式输出1.实型常量【例1.9】写出下面程序的运行结果。#includestdio.hmain(){printf(%f\n,123451234512345.1);printf(%e\n,12345.6788885);}123451234512345.0940001.234568e+004按指数形式输出P121.4.3实型常量与变量2.实型变量实型变量中只能存放实型数据单精度型float占4个字节双精度型double占8个字节在VC中,单双精度的实型都保证6位有效数字。实型变量无法精确地存放数据,会有误差1.字符型常量#includestdio.hmain(){printf(%c---%d,%c---%d\n,'a','a','A','A');printf(%c---%c\n,'\1','\x1');printf(Iam\OK\\n);}1.4.3字符型常量与变量2.字符型变量字符型变量中只能存放字符型数据存放ASCII字符集中的任何一个字符在内存中占一个字节例:各种类型变量的使用bianliang.c2.3输入输出语句2.3.1格式输入输出函数2.3.2字符输入输出函数在输入输出函数后面加一个分号返回P41格式化输出printf(格式串,[输出项列表]);输出项列表=参数1,参数2,参数3,……一.格式串1.原样输出的普通字符2.转义字符3.格式控制字符格式化输入scanf(“格式串”,输入项列表);2.3.1格式输入输出函数【例2.5】格式输入输出函数示例。#includestdio.hmain(){inta=0,b=0,sum=0;printf(data:\n);scanf(%d%d,&a,&b);sum=a+b;printf(%d+%d=%d\n,a,b,sum);}data:35若改为%d,%d3,5若改为a=%d,%da=3,5运行结果是:3+5=8注意:&a,&bP41演示:调试例2.5程序2.3.2字符输入输出函数字符型变量charcharch=’a’;用scanf和printf输入输出时%c还可使用getchar、putchar等函数P45【例2.6】字符输入输出函数示例。#includestdio.hmain(){charch='\0';printf(data:\n);ch=getchar();putchar(ch);putchar(’\n’);putchar(getchar());}data:ABAA_A_ABB可输入多个字符1.5运算符和表达式1.5.1算术运算符和表达式1.5.2赋值运算符和表达式1.5.3逗号运算符和表达式1.5.4自加、自减运算符返回1.5.1算术运算符和表达式+(加)-(减)*(乘)/(除)%(求余)-(求负)表达式2+3.5的值?5.5表达式1/2的值?00.5表达式1/2.0的值?表达式5%2的值?1表达式2%5的值?22.0%5()注意:说明:“%”:两侧运算量必须是整型其它:若运算量都是整型,则按整型计算结果为整型若至少有一个为实型,则先转化为双精度型后计算结果为双精度型数据类型的转换规则如下:floatintlongdoublechar转换方向charfloat2.算术表达式假设a的值为5,写出表达式a*((6+sqrt(9.0))/2)的求解过程求平方根函数第一步:5*((6+3.0)/2)第二步:5*(9.0/2)第三步:5*4.5第四步:22.5表达式的值注意:数学中的“[]”、“{}”用多层“()”代替应防止发生数据溢出现象【例1.14】将代数式改写成C语言算术表达式。bar23.14159*(r*r)/(a+b)不能用1.5.2赋值运算符和表达式1.赋值运算符=+=-=*=/=%=简单赋值运算符复合赋值运算符2.赋值表达式i=3*2是赋值表达式3×2=6赋值表达式的一般形式是:变量=表达式i变量必须是变量名任何合法表达式表达式赋值表达式的值:b=5b=b+257得到75b7表达式b=b+2的值为7注意:赋值运算符的两边数据类型不一致时:例如,inta;a=(int)4.5;4赋给a例如,inta;a=4.5;系统可自动转换:可人为地转换:自动转换成44赋给a表达式的值为4强制类型转换1.5.3逗号运算符和表达式expr1,expr2,……,exprn逗号表达式的执行过程:先计算expr1的值,再计算expr2的值,然后是expr3的值,最后计算exprn的值,整个逗号表达式的值是exprn的值。【例】逗号表达式的应用#includestdio.hmain(){inta=2,b=4,c=6,x,y;y=((x=a+b),(x+c));printf(x=%dy=%d\n,x,y);}1.5.4自加、自减运算符作用:使变量值加1或减1x++x=x+1x--x=x-1种类:前置++i,--i(先执行i+1或i-1,再使用i值)后置i++,i--(先使用i值,再执行i+1或i-1)例j=3;k=++j;j=3;k=j++;j=3;printf(“%d”,++j);j=3;printf(“%d”,j++);a=3;b=5;c=(++a)*b;a=3;b=5;c=(a++)*b;本次课的讲授内容是:1.常量与变量的概念;变量的命名规则。2.整型、实型常量和变量。3.变量初始化。4.算术、赋值运算符。5.格式输入输出。教学总结

1 / 48
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功