资源描述:
《华中科技大学计算机学院C语言与程序设计实验报告(含源代码).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、.课程实验报告课程名称:C语言程序设计实验专业班级:计算机1709班学号:U201714759姓名:指导教师:甘早斌报告日期:2018/1/10计算机科学与技术学院..目录1表达式和标准输入输出实验21.1实验目的21.2实验容21.3实验小结112流程控制实验1错误!未定义书签。2.1实验目的错误!未定义书签。22.2实验容错误!未定义书签。22.3实验小结253函数与程序结构实验263.1实验目的263.2实验容263.3实验小结374编译预处理实验384.1实验目的384.2实验容384.3实验小结465数组实验475.1实验目的475.2实验容475.3实验小结606指针实验6
2、16.1实验目的6错误!未定义书签。6.2实验容6错误!未定义书签。6.3实验小结777结构与联合实验错误!未定义书签。87.1实验目的787.2实验容787.3实验小结11错误!未定义书签。8文件实验1128.1实验目的错误!未定义书签。128.2实验容错误!未定义书签。128.3实验小结错误!未定义书签。17参考文献118..1表达式和标准输入与输出实验1.1实验目的(1)熟练掌握各种运算符的运算功能,操作数的类型,运算结果的类型及运算过程中的类型转换,重点是C语言特有的运算符,例如位运算符,问号运算符,逗号运算符等;熟记运算符的优先级和结合性。(2)掌握getchar,putch
3、ar,scanf和printf函数的用法。(3)掌握简单C程序(顺序结构程序)的编写方法。1.2实验容1.2.1源程序改错下面给出了一个简单C语言程序例程,用来完成以下工作:(1)输入华氏温度f,将它转换成摄氏温度c后输出;(2)输入圆的半径值r,计算并输出圆的面积s;(3)输入短整数k、p,将k的高字节作为结果的低字节,p的高字节作为结果的高字节,拼成一个新的整数,然后输出;在这个例子程序中存在若干语法和逻辑错误。要求参照1.3和1.4的步骤对下面程序进行调试修改,使之能够正确完成指定任务。1#include2#definePI3.14159;3voidmain(v
4、oid)4{5intf;6shortp,k;7doublec,r,s;8/*fortask1*/9printf(“InputFahrenheit:”);10scanf(“%d”,f);11c=5/9*(f-32);..12printf(“%d(F)=%.2f(C)”,f,c);13/*fortask2*/14printf("inputtheradiusr:");15scanf("%f",&r);16s=PI*r*r;17printf("Theacreageis%.2f",&s);18/*fortask3*/19printf("inputhexintk,p:");
5、20scanf("%x%x",&k,&p);21newint=(p&0xff00)
6、(k&0xff00)<<8;22printf("newint=%x",newint);}解答:(1)错误修改:1)第2行的符号常量定义后不能有分号,正确形式为:#definePI3.141592)第3行的voidmain(void)的返回类型和函数名应分开,正确形式为:intmain(void)3)第10行的scanf("%d",f);在输入容时指向地址应使用&,正确形式为:scanf("%d",&f);4)第11行的c=5/9*(f-32);由于f是int型,在运算时右侧表达式会被截去小数部分
7、,正确形式为:c=5.0/9*(f-32);5)第12行的printf(“%d(F)=%.2f(C)”,f,c);由于c是双精度浮点型变量应使用占位符%lf,正确形式为:printf("%d(F)=%.2lf(C)",f,c);6)第15行的scanf("%f",&r);由于r是双精度浮点型变量应使用占位符%lf,正确形式为:scanf("%lf",&r);..7)第17行的printf("Theacreageis%.2f",&s);变量s为长浮点型,且输出不需要取址符,正确形式为:printf("Theacreageis%.2lf",s
8、);8)第21行newint变量未声明,且数学表达式错误,正确形式为:shortnewint;newint=(p&0xff00)
9、((k&0xff00)>>8);9)第20行、第22行的变量为短整型,%x应为%hx,正确形式为:20scanf("%hx%hx",&k,&p);22printf("newint=%hx",newint);(2)错误修改后运行结果:..1.2.2源程序修改替换下面的程序利用常用的中间变量法实现两数交换,请改用