- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[实验报告二
《标准C语言程序设计》上机报告实验四 变量存储类型的理解和使用以及数组初步专业: 通信工程班级: 通信1001学号: u201013024姓名: 仝信男完成日期: 5月4号1实验目的熟悉变量的各种存储类型的定义和申明理解各种存储类型变量的作用域和生存期;掌握局部变量和全局变量;掌握动态存储和静态存储;掌握一维数组和二维数组的定义、初始化和数组元素的引用;理解并掌握数组名和数组下标的含义;与数组有关的算法初步(排序)掌握C开发环境中调试、跟踪数组元素取值和元素空间地址的使用实验内容及要求上机调试跟踪复合语句中的同名变量,掌握理解复合语句中局部变量的作用域以及变量存储空间的生存期。在报告中写出你对同名变量使用的深入理解。这里是代码和解答(通过上网或打开MSDN帮助了解符号::的含义,并谈谈你的理解)#includestdio.hint x=10;void main(){int x;x=1;printf(x=%d\n,x);{int x=2;x++;printf(x=%d\n,x);}x++;printf(x=%d\n,x);{int x=8;{int x=9;printf(x=%d\n,x);::x++; //此处的::x++含义是全局变量x=10自增}printf(x=%d\n,x);printf(x=%d\n, ::x);}}调试结果如下:::x表示对外部变量的引用,即main函数前面定义的x,::在C++中是作用域或分辨符,在这里的作用是局部域中访问全局外部的同名变量。在c语言中,同名变量的引用符合就近原则。上机运行下面程序,调试跟踪static变量a和其它存储类型变量b、c的取值变化,加深理解不同存储类型变量的作用域和生存期语法概念,并给出你对静态局部和自动变量这两种局部作用域存储类型的深入理解:这里是代码和解答(如果VC6.0不能跟踪static变量的取值,你准备用什么办法?)#includestdio.hvoid func(){static int a=0;register int b=0;auto int c=0;printf(a=%d\tb=%d\tc=%d\n,a++,b++,c++);}void main(){func();func();func();}由以上结果来看,在main函数3次调用func函数时,b与c两个分别是寄存器变量和自动变量,3次结果不变说明b、c两个变量生存期只有在函数内部,一旦脱离函数后,内存中的取值就清空,而a的依次增加说明,a的值为被清空,说明static变量生存期是整个main函数,以后定义变量时,我们要多加注意,若是想保证变量的取值能一直保留,则应用static,否则用auto或者register。教材习题四的第三题,给出运行结果,单步跟踪了解调试器对函数内部auto和static两种局部变量x和y的附带初值的定义语句执行过程有何区别?进一步深入理解两种局部变量auto、static的区别。这里是代码和解答#includestdio.hint n=1;void func(){static int x=4;int y=10;x=x+2;n=n+10;y=y+n;printf(func:x=%d,y=%d,n=%d\n,x,y,n);}void main(){static int x=5;int y;y=n;printf(main:x=%d,y=%d,n=%d\n,x,y,n);func();printf(main:x=%d,y=%d,n=%d\n,x,y,n);func();}运行结果如下: 调试过程如下:在第一个输出语句中,x=5,而n=1已经定义,而又将n的值赋给了y,故输出以上结果。而在调用func时x,y值的引用符合就进原则,故x=6,n=11,y=21.在第二个输出语句中,x=5,而在main函数中y的值一直不变故y=1,而由于在main函数外定义的n为外部参照型,在运行时不执行,故n=n+1=11.在第二对func调用时,x=x+2=6+2=8,n=n+1=21,而y被初始化,故y=y+n=10=21=31.理解符号常量的作用域代码中条件编译请参考教材chapter10第三节,也可参考MSDN得到更多理解,报告中给出你对条件编译的深入理解(不仅限于本题)#includestdio.h#define DEBUG/*int f(){int k;k=NUM;return k;}*/#define NUM 20int p(){int k;k=NUM+1;return k;}#undef NUM/*int g(){return NUM -1;}*/void main(){int rtn;//rtn=f();rtn=p();//rtn=g();
您可能关注的文档
- [实践育人篇定稿.doc
- [语文读音易错字.doc
- [实践范文1.doc
- [实践观点对解放思想的内在要求.doc
- [语文课上激发学习动机.doc
- [第八章波形的发生和信号的转换.ppt
- [第八章物业管理.ppt
- [语文课前三分钟.doc
- [实践调查报告范围指导.doc
- [实验13调幅发射与接收完整系统的联调.doc
- 2024高考物理一轮复习规范演练7共点力的平衡含解析新人教版.doc
- 高中语文第5课苏轼词两首学案3新人教版必修4.doc
- 2024_2025学年高中英语课时分层作业9Unit3LifeinthefutureSectionⅢⅣ含解析新人教版必修5.doc
- 2024_2025学年新教材高中英语模块素养检测含解析译林版必修第一册.doc
- 2024_2025学年新教材高中英语单元综合检测5含解析外研版选择性必修第一册.doc
- 2024高考政治一轮复习第1单元生活与消费第三课多彩的消费练习含解析新人教版必修1.doc
- 2024_2025学年新教材高中英语WELCOMEUNITSectionⅡReadingandThi.doc
- 2024_2025学年高中历史专题九当今世界政治格局的多极化趋势测评含解析人民版必修1.docx
- 2024高考生物一轮复习第9单元生物与环境第29讲生态系统的结构和功能教案.docx
- 2024_2025学年新教材高中英语UNIT5LANGUAGESAROUNDTHEWORLDSect.doc
最近下载
- 会计学原理23版 英文版课件WildFAP23eCh05PPT.pptx
- 华为公司职类职种职级体系的划分及职业发展通道设计.pdf VIP
- 建筑解析流水别墅.pptx
- 2025届高三英语复习语法填空专题(24张PPT).pptx VIP
- 基于PLC的磨矿控制系统设计.docx
- 有限元分析论文.doc VIP
- 苏教版小学科学五年级上册第四单元《水在自然界的循环》大单元教学设计(含练习).docx
- 聚氯乙烯热收缩膜标签验收标准.doc VIP
- 2023年安徽省高中学业水平合格性考试数学试卷真题(含答案详解) (2).pdf VIP
- 2025届江苏省南菁高级中学物理高一第一学期期中达标检测模拟试题含解析.doc
文档评论(0)