资源描述:
《c语言实验指导书(高级语言程序设计i)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、高级语言程序设计I(C语言)实验指导书 四川大学计算机学院计算机工程系“程序员摇篮”教学团队编写洪枚审定 四川大学计算机学院2006.7 高级程序设计I(C语言)实验指导书目录使用说明3实验一C语言程序初步4实验二 数据类型6实验三 运行符与表达式7实验四 输入与输出8实验五 选择结构10实验六条件型循环结构12实验七计数型循环结构13实验八函数的定义及调用15实验九数组16实验十指针(一)19实验十一指针(二)21实验十二结构体和共用体24实验十三位运算25实验十四文件26实验十五综合应用举例(一)27实验十六综合应用举例(二)32 使用说
2、明本实验指导书为开设《高级语言程序设计I(C语言)》课程的专业使用,各专业可根据情况选用1到16的。计算机学院2006-7实验一C语言程序初步一、目的和要求1、 熟悉C语言运行环境。2、 掌握C语言程序的书写格式和C语言程序的结构。3、 掌握C语言上机步骤,了解运行一个C程序的方法。4、 本实验可在学习完教材第二章后进行。二、实验内容1、 C语言上机步骤:(A)、在四川大学计算机基础教育实验中心上机,启动后请选择进入WindowsXP系统。(B)、实验环境VC++。(C)、VC++的使用环境参见附录VC++的使用方法。2、有下面的C程序,目的是想计算由键盘输
3、入的任意两个整数的积。/********exl.c********/ #include(stdio.h);main()scanf(“%x,%y”,&x,%y)p=prodct(x,t)printf(“Theproductis:”,p)intprodct(inta,intb)intcc=a*breturnc请调试上述程序。三、实验步骤1、静态地检查上述程序,改正程序中的错误。2、在编辑状态下照原样键入上述程序。3、编译并运行上述程序,记下所给出的出错信息。4、按照事先静态检查后所改正的情况,进行纠错。5、再编译执行纠错后的程序。如还有错误,再编辑改正,直到不出
4、现语法错误为止。6、下面给出6组测试用例,你认为哪几组较好?为什么?(1)0, 0(2)0, 99(3)20,50(4)33000,20(5)-5,-2(6)-5,2要测试出上述程序中所有错误,你认为应当用几组测试用例?四、分析与讨论1、记下在调试过程中所发现的错误、系统给出的出错信息和对策。分析讨论对策成功或失败的原因。2、总结C程序的结构和书写规则。 实验二 数据类型一、目的和要求1、了解C语言中数据类型的意义。2、本实验可在学习了教材第3章后进行。二、实验内容和步骤1、下面的程序试图计算由键盘输入的任意两个整数的平均值:#include
5、tdio.h>main(){intx,y,a;scanf(“%x,%y,&x,&y);a=(x+y)/2;printf(“Theaverageis:”a);}调试无语法错误后,分别使用下列测试用例对上述程序进行测试:(1)2,6(2)1,3(3)-2,-6(4)-1,-3(5)-2,6(6)-1,3(7)1,0(8)1,6(9)32800,33000(10)-32800,330001、分析上述哪几组测试用例较好?通过测试,你发现程序有什么错误了吗?若有错误,请指出错误原因。2、操作符sizeof用以测试一个数据或类型所占用的存储空间的字节数。请编写一个程序,
6、测试各基本数据类型所占用的存储空间大小。三、分析与讨论如何正确地选用数据类型?(提示:给合前面做过的两个实验及书本进行讨论总结) 实验三 运算符与表达式一、目的和要求1、理解常用运行符的意义。2、掌握C语言表达式的运行规则。3、本实验可在学习了教材第3章后进行。二、实验内容和步骤1、编写一个C语言程序,测试下列各表达式i,ji+1,j+1i++,j++++i,++ji+++++j++i+++++j++要求在各表达式中i和j都分别有相同的初值。在实验中注意下列问题:(1) 哪些表达式是错误的?为什么?(2) 理解+,++,++i,i++的意义和优先级别。2
7、、编写一个程序,测试常用的十个运算符的优先顺序。四、分析与讨论分析总结运算符的优先级。 实验四 输入与输出一、目的和要求1、掌握C语言程序输入、输出的方法和格式。2、本实验可在学习教材第二章后进行。二、实验内容与步骤1、输入并编辑下面的程序main(){inta,b;floatc,d;longe,f;unsignedintu,v;charc1,c2;scanf(“%d,%d”,a,b);scanf(“%f,%f”,c,d);scanf(“%ld,%ld”,e,f);scanf(“%o,%o”,u,v);scanf(“%c,%c”,c1,c2);printf(
8、“”);printf(“a=%7d,b=%7d