- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构实验手册修订版
第一部分 C语言基本知识
《数据结构》是计算机专业及相关专业的核心基础课。上机实验是对学生的一种全面综合训练,是与课堂听讲、自学和练习相辅相成的必不可少的一个教学环节。通常,实验题中的问题比平时的习题复杂得多,也更接近实际。实验着眼于原理与应用的结合点,使学生学会如何把书上学到的知识用于解决实际问题,培养软件工作所需要的动手能力;另一方面,能使书上的知识变“活”,起到深化理解和灵活掌握教学内容的目的。
目前各种“数据结构”教材较为注重理论的叙述与介绍,算法描述不拘泥某种语言的语法细节。多年的教学实践表明,学生的程序设计基础并不一致,相当一部分人基础较为薄弱,对上机实验感到非常困难。存在的主要问题是:不能正确的输入数据,结构体概念陌生,函数的传址调用概念不清,有关指针的内容理解不深。因此,有必要将数据结构所必须使用的C语言语法在此做简单介绍。如果学生基础好,可以跳过这一部分内容不看。
一、基本输入和输出
看起来简单的输入/输出,往往是上机实验最容易出错的地方,尤其是输入。对于一个算法程序,如果数据不能正确输入,算法设计得再好也无法正常运行。
输入
C语言的输入是由系统提供的scanf( )等函数实现, 在程序的首部一般要求写入:
# include stdio.h
因为标准输入/输出函数都存在于头文件 stdio.h 之中,现将其包含进来方可使用这些常用的输入/输出函数。有的系统允许不使用上述包含语句,可以直接使用标准输入/输出函数。
函数scanf()的功能很丰富,输入格式也是多种多样,这是大家较为熟悉的知识,这里不做详细介绍。在使用中需要注意以下几个问题。
(1)一条scanf( )语句有多个变量、并且都是数值型(int, float, double)时,在输入数据时应该在一行之内键入多个数据,数据之间空格分隔。例如:
int n; float x;
scanf (“%d %f ” , n, x);
正确的输入应是:整数 空格 实数 回车。例如:
就是在两个数据之间使用空格键为分隔符,最后打回车键。
如果语句中在%d 和%f 之间有一个逗号:
scanf (“%d ,%f ” , n, x);
正确的输入应是:整数 逗号 实数 回车。例如:
(2)在需要字符型变量或字符串输入时,要单独写一条输入语句,这样不易出错。
如果在同一条scanf( )语句中将字符型和数值型混合输入常常会出错。因为键盘输入时在数值型数据之间‘空格键’起‘分隔符’作用,但是在字符或字符串之间,‘空格’会被当做一个字符,而不能起到‘分隔符’的作用。所以将它们混在一起容易出错。
(3)在scanf( )语句中变量写法应该是该变量的地址,这一点常被忽视。
例1 请看下列程序:
1: viod main()
2: { char name[10], ch ;
3: int num; float x;
4: printf(“\n 请输入姓名:”); scanf(“%s”, name);
5: printf(“\n 请输入性别:”); scanf(“%c”, ch);
6: printf(“\n 请输入学号和成绩:”); scanf(“ %d%f”, n, x);
……;
}
为了方便说明问题程序中加了行号,运行时当然不允许行号。一般情况下在scanf( )语句中的变量名之前要加上求地址符,上述程序第5,6行之中就是这样。为什么第4行的name前面不加呢?因为name代表字符串,即是一维字符数组,一维数组名本身就是一个地址,是该数组的首地址,所以name前面不加。
在本程序中把字符串、字符、数值型变量分别写入不同的scanf( )语句,输入数据的具体形式如下:
请输入姓名:ZhangHua
请输入性别:v
请输入学号和成绩:101 90.5
请考虑如果姓名输入成:Zhang Hua,会出现什么现象?那样只会读入Zhang做姓名,而Hua被忽略,还会影响后面的输入语句无法正确读入数据。
因此,应该充分重视数据的输入技术。
输出
C语言的输出是由系统提供的printf( )等函数来实现, 在程序的首部一般要求写入:
# include stdio.h
因为标准输入/输出函数都存在于头文件 stdio.h 之中,现将其包含进来方可使用这些常用的输入/输出函数。有的系统允许不使用上述包含语句,可以直接使用标准输入/输出函数。
输出函数printf( )的语法一般容易掌握,这里强调的是怎样合理巧妙的使用它。
(1)在连续输出多个数据时,数据之间一定要有间隔,不能连在一起。
int n=
您可能关注的文档
最近下载
- 国开电大专科《政治学原理》在线形考(形考任务一至四)试题及答案.pdf VIP
- 小微企业安全生产标准化创建全套资料模板.doc VIP
- ISO9001质量体系质量手册.pdf VIP
- 云南杞麓湖流域水污染综合防治规划.doc VIP
- SHT3903-2017 石油化工建设工程项目监理规范.docx VIP
- 完整版劳动合同书Word模板(共5页).pdf VIP
- 电工技术基础(高等职业)全套教学课件.pptx
- 〖生物〗期末复习课件2025-2026学年人教版生物八年级上册.pptx VIP
- 深基坑钢筋混凝土支撑拆除.ppt VIP
- WG2000KDF双馈变流器培训资料(硬件部分).ppt VIP
原创力文档


文档评论(0)