- 1、本文档共54页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
算法语言与数据结构 信息与物流管理系 王健 第2章 简单程序设计 了解C程序的基本格式,变量的定义和赋值 第2章 简单程序设计 2.2 常量、变量和变量名 变量是相对常量而言的,在程序中经过操作其值允许改变和可以改变的量称之为变量。 变量在使用前必须加以定义(在声明中定义)。 每一个变量要有一个与其它变量不相同的合法的名字。这个名字的第一个字符必须是字母或下划线,其后的字符只能是字母、数字和下划线,且所用的名字不得与C/C++语言系统所保留的关键字相同。 建议:你在给变量命名时考虑实际含义,以便提高程序的易读性。比如上例中的苹果单价用ApplePrice。 2.3 变量的数据类型 【练习】 新年就要到了,假定你是一个班里的干部,要负责筹备一个晚会,当然少不了要采购一些瓜果花生之类。现在请你设计一个采购程序,买什么由你定,但不得突破总钱数的限额100元。 粗略地看,++i和i++的作用相当于i=i+1。但++i和i++不同之处在于++i是先执行i=i+1后,再使用i的值;而i++是先使用i的值后,再执行i=i+1。 如果i的原值等于3,则:①j=++i;j的值为4 ②j=i++; j的值为3,然后i变为4 又如: 设: i=3; printf(”%d”,++i); 输出“4”。若改为 printf(”%d”,i++); 则输出“3”。 注意:(1)自增运算符(++),自减运算符(--),只能用于变量,而不能用于常量或表达式。 例如5++或(a+b)++都是不合法的。因为5是常量,常量的值不能改变。(a+b)++也不可能实现,假如a十b的值为5,那么自增后得到的6放在什么地方呢?无变量可供存放。 (2)++和--的结合方向是“自右至左”。 例如果有-i++,i的左面是负号运算符,右面是自加运算符。如果i的原值等于3,若按左结合性,相当于(-i)++,而(-i)++是不合法的。对表达式不能进行自加自减运算。从附录中可知负号运算符和“++”运算符同优先级,而结合方向为“自右至左”(右结合性),即它相当于-(i++),如果有printf(”%”,-i++),则先取出i的值使用,输出-i的值-3,然后使i增值为4。注意(i++)是先用i的原值进行运算以后,再对i加1,不要认为先加完1后再加负号,输出-4,这是不对的。 使用的地方:a. 常用于循环语句中使循环变量自动加1。 b. 用于指针变量,使指针指向下一个地址。 4、有关表达式使用中的问题说明 C运算符和表达式使用灵活,但容易搞混。请注意以下几点: 1.在表达式中包含自加或自减运算时,很容易出错。 【例2.8】分析下列程序中自增与自减运算的过程。 main() { int a1,a2,a3,a4,b1,b2,b3,b4; a1=a2=a3=a3=10; b1=(a1++)+(a1++)+(a1++); b2=(++a2)+(++a2)+(++a2); b3=(a3--)+(a3--)+(a3--); b4=(--a4)+(--a4)+(--a4); printf(”a1=%d,a2=%d,a3=%d,a4=%d\n”,a1,a2,a3,a4); printf(”b1=%d,b2=%d,b3=%d,b4=%d\n”,b1,b2,b3,b4); 运行结果:a1=13,a2=13,a3=7,a4=7 b1=30,b2=39,b3=30,b4=21 分析说明: b1:由于a1++是先用后加,则相当于b1=a1+a1+a1=30; b2:由于++a2是先加后用,所以a2=13,最后b2=a2+a2+a2=39; b3:由于a3--是先用后减, 则b3=a3+a3+a3=30; b4:由于--a4是先减后用,所以a4=7,最后b4=a4+a4+a4=21; 2.C语言中有的运算符为一个字符,有的运算符由两个字符组成,在表达式中如何组合呢?原则上采用自左而右。 3.C语言中类似上述这样的问题还有一些。 若i的初值为3时: 函数调用:printf (“%d,%d”,i,i++) 答案:有的系统中从左至右求值,输出“3,3”。 多数系统是自右而左求值,输出“4,3”。 最后说明:① 这些问题不必死记,必要时上机试一下即可。 ② 使用十十和一一时会出现一些人们“想不到”的副作用,初学者要慎用。 说明: ① 赋值运算符“=”是一双目运算符,其结合性是从左至右,即右结合性。 ex: a=b=c=5 即5先赋给c,c赋给b,b赋给a,a,b,c的值均为5。
您可能关注的文档
- 第3章算法与数据结构.ppt
- 第12章 射频微波天线.ppt
- 第子规图文版&文字版.doc
- 电脑装机详细图文教程.doc
- 电子设计大赛模电培训.ppt
- 电子设计大赛模拟电子技术部分.ppt
- 福特福克斯清洗节气门-图文并茂大全版.doc
- 钢筋图文说明(很全面).doc
- 高中知识结构图文科.doc
- 工程常见石材图文资料集合.doc
- 2024年西式面点师(技师)考试题库及答案.pdf
- 2024外研版七年级英语上册Starter Period 4 Organise a party(分层练习).pdf
- 五年级数学口算练习(68份).pdf
- 无菌技术操作评分标准.pdf
- 物业服务手册.pdf
- 五年级科学上册教案设计.pdf
- 陕西省榆林市某中学2024-2025学年高二年级上册9月月考物理试题(含答案).pdf
- 陕西省西安市某中学2024-2025学年高考备考冲刺阶段数学试题(含解析).pdf
- 新外研版英语(三起)三年级上册全册单元知识总结(含答案).pdf
- 山东省滨州市2023-2024学年七年级上学期语文期中试卷(含答案).pdf
文档评论(0)