程序设计教程第二式学习教案_第1页
程序设计教程第二式学习教案_第2页
程序设计教程第二式学习教案_第3页
程序设计教程第二式学习教案_第4页
程序设计教程第二式学习教案_第5页
已阅读5页,还剩93页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、会计学1程序设计教程程序设计教程(jiochng)第二式第二式第一页,共98页。C语言的字符(z f)集合包括:第1页/共97页第二页,共98页。任何一个标识符必须(bx)符合下列语法规则:第2页/共97页第三页,共98页。所在。所在。关键字(保留字)第3页/共97页第四页,共98页。特定(tdng)字 特定字:具有特殊含义的标识符。它们虽然不是关键字,但是在习惯(xgun)上把它们看成关键字。所以一般用户定义的标识符也不要使用它们。 特定字包括: define undef include ifdef ifndef endif line 第4页/共97页第五页,共98页。用户(yngh)定义字

2、第5页/共97页第六页,共98页。第6页/共97页第七页,共98页。定义(dngy)变量第7页/共97页第八页,共98页。第8页/共97页第九页,共98页。 C语言(yyn)的数据类型第9页/共97页第十页,共98页。 不同数据类型(lixng)的数据由于其在内存的存储方式不同,存储所占的二进制位(bit)大多不相同。即使是相同类型(lixng)的数据在不同种类的计算机所占位(bit)数也不完全相同。 第10页/共97页第十一页,共98页。 2.2.2 问题的提出问题一: 从键盘接收一个(y )字符,输出该字符的按 字典排列顺序的下一个(y )字符,例如,输入a, 输出b。问题二: 从键盘接收

3、两个整数,输出它们的和。问题三: 从键盘接收两个浮点数,输出它们的乘积。第11页/共97页第十二页,共98页。第12页/共97页第十三页,共98页。 15个个1 则则16bit能表示的最大整数是能表示的最大整数是215 1 ,即即32767。整型数据在内存中的存储(cn ch)方式第13页/共97页第十四页,共98页。第14页/共97页第十五页,共98页。整型变量(binling)第15页/共97页第十六页,共98页。字母字母L 。 long s; s=10L ;整型常量(chngling)第16页/共97页第十七页,共98页。第17页/共97页第十八页,共98页。整型数据(shj)的输出第1

4、8页/共97页第十九页,共98页。第19页/共97页第二十页,共98页。第20页/共97页第二十一页,共98页。整型数据(shj)的输入第21页/共97页第二十二页,共98页。第22页/共97页第二十三页,共98页。第23页/共97页第二十四页,共98页。第24页/共97页第二十五页,共98页。第25页/共97页第二十六页,共98页。说,并没有将说,并没有将10和和20正确地送到正确地送到x和和y这两个这两个(lin )变量变量中,从而得出一个奇怪的结果中,从而得出一个奇怪的结果510。第26页/共97页第二十七页,共98页。第27页/共97页第二十八页,共98页。是为了是为了(wi le)使

5、输使输出的数字格式清晰明了,容易看懂。出的数字格式清晰明了,容易看懂。第28页/共97页第二十九页,共98页。第29页/共97页第三十页,共98页。第30页/共97页第三十一页,共98页。充充0,就是一个,就是一个(y )字节了。字节了。例如,在例如,在ASCII编码表中,编码表中,A用用数值数值65表示,表示,其其8位二进制表示是:位二进制表示是: 01000001第31页/共97页第三十二页,共98页。第32页/共97页第三十三页,共98页。可以是整型数,但参数的值最好在可以是整型数,但参数的值最好在01270127之间,之间,否则,输出可能是一些否则,输出可能是一些(yxi)(yxi)乱

6、码。乱码。第33页/共97页第三十四页,共98页。第34页/共97页第三十五页,共98页。第35页/共97页第三十六页,共98页。第36页/共97页第三十七页,共98页。第37页/共97页第三十八页,共98页。例2.9从键盘接收(jishu)一个字符,输出该字符的按字典排列顺序的下一个字符,例如,输入a,输出b。 #include stdio.h void main() char c; printf(nPlease enter one char:n); c=getchar(); putchar (c+1); 第38页/共97页第三十九页,共98页。或者 #include stdio.h voi

7、d main() printf(nPlease enter one char:n); putchar(getchar()+1); 运行情况:Please enter one char:a (用户(yngh)输入)b第39页/共97页第四十页,共98页。例2.10 修改例2.9,使用printf和scanf函数完成(wn chng)操作。 #include stdio.h void main() char c; printf(nPlease enter one char:n); scanf(%c,&c); c=c+1; printf(%cn,c); 运行情况:Please enter one c

8、har:a (用户输入)b第40页/共97页第四十一页,共98页。scanf不会跳过空格、不会跳过空格、tab或换行,而是直或换行,而是直接把下一个字接把下一个字符输入给参数,不论它是什么。符输入给参数,不论它是什么。第41页/共97页第四十二页,共98页。第42页/共97页第四十三页,共98页。 “a” “a”与与aa是完全不同的,是完全不同的,前者是字符串常量,占的字节数是前者是字符串常量,占的字节数是2 2,后者是字符常量,占的字节数是后者是字符常量,占的字节数是1 1。字符串常量的输出字符串常量的输出 printf(how are you) printf(how are you); p

9、rintf(%s,how are you) printf(%s,how are you);第43页/共97页第四十四页,共98页。第44页/共97页第四十五页,共98页。能会有一些微小的差别。能会有一些微小的差别。0 1 7 8 31 符符号号位位 阶阶码码 尾尾数数 浮点数据在内存中的存储(cn ch)方式第45页/共97页第四十六页,共98页。第46页/共97页第四十七页,共98页。第47页/共97页第四十八页,共98页。第48页/共97页第四十九页,共98页。浮点数据输入(shr)与输出 第49页/共97页第五十页,共98页。第50页/共97页第五十一页,共98页。第51页/共97页第五

10、十二页,共98页。n2.3.9 2.3.9 赋值表达式的类型转换赋值表达式的类型转换第52页/共97页第五十三页,共98页。n无意义的简单语句无意义的简单语句第53页/共97页第五十四页,共98页。n第54页/共97页第五十五页,共98页。n同。函数和圆括号的优先级最高。同。函数和圆括号的优先级最高。第55页/共97页第五十六页,共98页。第56页/共97页第五十七页,共98页。n计算计算a+ba+b,然后用,然后用a+ba+b的结果减的结果减c c。n双目运算符的结合性与数学运算并双目运算符的结合性与数学运算并无不同。无不同。第57页/共97页第五十八页,共98页。第58页/共97页第五十九

11、页,共98页。第59页/共97页第六十页,共98页。第60页/共97页第六十一页,共98页。 前缀表示法是先将i值增/减1,再在表达式中使用;而后缀(huzhu)表示法是先在表达式中使用i的值,再将i值增/减1。例如: i=3; i=3; j=i+; j=+i; 结果 j的内容为3 j的内容为4 i的内容为4 i的内容为4 第61页/共97页第六十二页,共98页。等价于等价于 -(i+) -(i+)副作用:副作用:printf(“ %d ,%d”,i,i+);printf(“ %d ,%d”,i,i+);在在不同不同的编译环境下结果有可能不同。的编译环境下结果有可能不同。尽量不要在一般的表达式

12、中将增尽量不要在一般的表达式中将增1/1/减减1 1运算运算符与其它运算符混合使用。符与其它运算符混合使用。第62页/共97页第六十三页,共98页。第63页/共97页第六十四页,共98页。按位与& 按位与的运算规则是:0&0=0 0&1=0 1&0=0 1&1=1例如:char w1,w2,w3;w1=10; w2=8; w3= w1&w2 ; w3的内容(nirng)可以通过下式运算: 00001010 00001000 (按位与&) 00001000 (结果) 第64页/共97页第六十五页,共98页。&运算经常用于把特定(tdng)位清零(屏蔽)。例如, a的值为11011010,b的值为

13、11110000, a&b 11011010 & 11110000 11010000 相当于把a的低4位屏蔽,高4位不变。 第65页/共97页第六十六页,共98页。第66页/共97页第六十七页,共98页。第67页/共97页第六十八页,共98页。第68页/共97页第六十九页,共98页。移位(填充)逻辑移位(填充)。移位(填充)逻辑移位(填充)。第69页/共97页第七十页,共98页。用在其它的表达式中。用在其它的表达式中。第70页/共97页第七十一页,共98页。2.3.7 求字节数运算符 sizeof是一个比较特殊的单目运算符,也是一个非常有用的运算符,经常用于动态分配空间。 其语法格式为: si

14、zeof(表达式) 表达式可以是变量名、常量(chngling)、以及数据类型名。 第71页/共97页第七十二页,共98页。 它的功能是:求表达式中变量名所代表的存储单元所占的字节数;或是求表达式中常量的存储单元所占的字节数;或是求表达式中的数据类型表示的数据在内存单元中所占的字节数。 sizeof(int)的结果(ji gu)是2, sizeof运算符比较灵活,同样是求整型int数据所占的字节数,可以使用三种办法:(1) 求sizeof(int) (2) 求sizeof(10)(3) 使用int a; 求sizeof(a)第72页/共97页第七十三页,共98页。例2.13 求各种( zhn)

15、数据类型在内存中所占的字节数。 #include stdio.h void main() printf(char =%d byten,sizeof(char); printf(short int =%d byten,sizeof(short int); printf(int =%d byten,sizeof(10); printf(long int =%d byten,sizeof(10L); printf(float =%d byten,sizeof(float); printf(double =%d byten,sizeof(2.3); printf(china=%d byten,size

16、of(china); 第73页/共97页第七十四页,共98页。float double 高 long unsigned char 、short int 低 第74页/共97页第七十五页,共98页。值都没有任何改变。值都没有任何改变。第75页/共97页第七十六页,共98页。存储表示方式有关。存储表示方式有关。( (详细内容自学)详细内容自学)第76页/共97页第七十七页,共98页。第77页/共97页第七十八页,共98页。c=32763第78页/共97页第七十九页,共98页。y=1.234567E+37第79页/共97页第八十页,共98页。y=1.234567E+37第80页/共97页第八十一页,

17、共98页。301000i第81页/共97页第八十二页,共98页。301000i1000p 用p变量记住了i的地址,p的数据类型就是(jish)指针类型。第82页/共97页第八十三页,共98页。的情况下,经常把指针变量简称为指的情况下,经常把指针变量简称为指针。针。第83页/共97页第八十四页,共98页。第84页/共97页第八十五页,共98页。*/ int *p; /*定义指针变量定义指针变量p */p=&i; /*p指向指向i */第85页/共97页第八十六页,共98页。p */p=&i; /*p指向指向i */*p=3; /*使使i的内容为的内容为3 */最后一句是将最后一句是将p指向的存储单元指向的存储单元i的内的内容赋值为容赋值为3。第86页/共97页第八十七页,共98页。第87页/共97页第八十八页,共98页。int i; float *p; p=&i; /*错误错误*/ 上述程序段可能会引起预想不到的结上述程序段可能会引起预想不到的结果

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论