实验2用C语言编写简单程序

上传人:壹****1 文档编号:486795339 上传时间:2023-06-04 格式:DOC 页数:17 大小:950.50KB
返回 下载 相关 举报
实验2用C语言编写简单程序_第1页
第1页 / 共17页
实验2用C语言编写简单程序_第2页
第2页 / 共17页
实验2用C语言编写简单程序_第3页
第3页 / 共17页
实验2用C语言编写简单程序_第4页
第4页 / 共17页
实验2用C语言编写简单程序_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《实验2用C语言编写简单程序》由会员分享,可在线阅读,更多相关《实验2用C语言编写简单程序(17页珍藏版)》请在金锄头文库上搜索。

1、文档供参考,可复制、编制,期待您的好评与关注! 实验2 用C语言编写简单程序2.1 基本数据处理【实验目的】 1.掌握算术表达式和赋值表达式的使用。 2.掌握基本输出函数的使用。 3.能够编程实现简单的数据处理。 4.掌握简单C程序的查错方法。【实验内容】1调试示例改正下列程序中的错误,求华氏温度100oF对应的摄氏温度计算公式如下,其中:c 表示摄氏温度,f 表示华氏温度(源程序error02_1.c)源程序(有错误的程序)#include int main(void) int celsius; fahr; fahr =100; celsius =5*(fahr -32) /9; print

2、f(fahr =d, celsius =%dn, fahr, celsius); return 0;运行结果(改正后程序的运行结果)fahr =100, celsius =37(1)使用Guide打开源程序error02_1.c(如图2.1所示)。(2)使用工具栏按钮进行程序的编译和运行。工具栏按钮中,表示编译,表示停止编译,表示运行,表示停止运行。图2.1 Guide打开文件界面(3)单击编译按钮,编译时出现的第一条错误信息是:error02_1.c:1:20: stdoi.h : No such file or directory双击该错误信息,光标指向源程序第一行,错误信息指出不能打开”

3、stdoi.h”文件,因为”stdio.h”被误写为”stdoi.h”。改正为” stdio.h”后,重新编译,新产生的第一条错误信息是:error02_1.c:4: error: fahr undeclared (first use in this function)双击该错误信息,光标指向源程序第四行,错误信息指出”fahr”变量没有被定义。仔细观察后,反省”fahr”前的分号应该为逗号。将”fahr”前的分号改为逗号后,重新编译,编译正确。(4) 单击编译按钮,编译正确。(5) 单击运行按钮,运行结果为:fahr =d, celsius =37结果不符合题目的要求,仔细检查源程序,发现函

4、数printf中的”fahr =d”的”d”应为”%d”。改正后,重新编译和运行,运行结果与题目要求的结果一致。2.编程题求华氏温度150oF对应的摄氏温度计算公式如下,其中:c 表示摄氏温度,f 表示华氏温度 输入输出示例fahr =150, celsius =663.编程题求摄氏温度26对应的华氏温度计算公式如下,其中:c 表示摄氏温度,f 表示华氏温度 输入输出示例celsius =26, fahr =784.编程题已知某位学生的数学英语和计算机课程的成绩分别是87 分72 分和93 分,求该生3 门课程的平均分输入输出示例math =87, eng =72, comp =93, ave

5、rage =845.编程题当n 为152 时,分别求出n 的个位数字(digit1)十位数字(digit2)和百位数字(digit3)的值输入输出示例整数152 的个位数字是2,十位数字是5,百位数字是1提示:n 的个位数字digit1 的值是n%10,十位数字digit2 的值是(n /10)%10,百位数字digit3的值是n /100思考:如果n 是一个四位数,如何求出它的每一位数字?6.改错题改正下列程序中的错误,计算某个数x 的平方y,并分别以“y =x*x”和“x*x =y”的形式输出x 和y 的值请不要删除源程序中的任何注释(源程序error02_2.cpp)输入输出示例(假设x

6、 的值为3)9 =3*33*3 =9源程序(有错误的程序)#include int main(void) int y; y =x*x; printf(%d =%d*%d, x); /*输出 printf(d*%d =%d, y); return 0;2.2 计算分段函数【实验目的】1. 使用if语句计算分段函数。2. 正确书写关系表达式。3. 掌握基本输入函数的使用,能正确调用C语言提供的数学库函数。4. 掌握简单的单步调试方法。【实验内容】1. 调试示例改正下列程序中的错误,输入x计算并输出下列分段函数f(x)的值(保留1位小数)(源程序error02_3.c)源程序(有错误的程序)#inc

7、lude int main(void) double x, y; printf(Enter x: ); scanf(%lf, x); if(x ! =0) y =1 /x else y =0; printf(f(%.2f) =%.1fn, x, y); return 0;运行结果1(改正后程序的运行结果)Enter x:10f(10.00) =0.1运行结果2Enter x:0f(0.00) =0.0在运行结果中,凡是加下划线的内容,表示用户输入的数据,每行的最后以回车结束;其余内容都为输出结果。在本书的所有实验题目中,都遵循这一规定。(1)使用软件GUIDE打开源程序error02_3.c。

8、执行“编译”菜单|“编译”命令,或者单击(编译)按钮,编译程序。在窗口下方的“信息查看栏”中,出现了编译错误信息,如图2.2所示。图2.2 编译错误信息(2)第一条编译错误信息是:error02_3.c:6: warning: format argument is not a pointer (arg 2)双击该错误信息,光标定位于第6行,scanf(%lf,x),错误信息指出“x”的前面少了“&”。(3)在第6行的“x”前面加上“&”。(4)单击(编译)按钮重新编译,新出现的第一条错误信息是:error02_3.c:9: error: syntax error before token双击该

9、错误信息,光标定位于第9行,错误信息指出在第9行的“”前缺少分号。(5)在第8行的“y =1/x”后面加上分号“;”。(6)单击(编译)按钮重新编译,编译成功,如图2.3所示。(7)单击“保存文件”按钮(),保存文件。图2.3 编译成功后的源程序(8)执行“调试”菜单|“逐过程”命令,或者单击调试工具条中的(逐过程)按钮(如图2.4所示),程序调试开始。图2.4 调试工具条(9)编辑窗口中的箭头指向第3行,表示程序将要执行该行,如图2.5所示。在图2.5下方的“本地变量”窗口中列出了变量的值。图2.5 程序调试开始,箭头指向第3行(10)单击(逐过程)按钮2次,程序执行到第6行(scanf(%

10、lf,&x);),如图2.6所示。同时在运行窗口中显示“Enter x:”(如图2.7所示),此时将要执行输入语句。图2.6 程序单步调试,箭头指向第6行图2.7 运行窗口,等待输入(11)继续单击(逐过程)按钮一次,在运行窗口中输入“10”(如图2.8所示)。图2.8 在运行窗口中输入10(12)按回车键后,箭头指向第7行“if(x!=0)”(如图2.9所示),观察“本地变量”窗口中变量x的值为10。图2.9 程序单步调试,箭头指向第7行,窗口下方显示变量x的值(13)继续单击(逐过程)按钮2次,箭头指向第13行“printf(f(%.2f)=%.1fn, x, y);”,在“本地变量”窗口

11、中可以看到变量y的值为0.10000000000000001(如图2.10所示)。图2.10 程序单步调试,箭头指向第13行,窗口下方显示变量y的值(14)继续单击(逐过程)按钮1次,箭头指向第14行“return 0;”(如图2.11所示),运行窗口显示运行结果(如图2.12所示),运行结果符合题目要求。图2.11 程序单步调试,箭头指向第14行图2.12 运行窗口显示运行结果(15)单击(结束调试)按钮,程序调试结束。2.编程题输入华氏温度,输出对应的摄氏温度计算公式如下,其中:c 表示摄氏温度,f 表示华氏温度 输入输出示例Enter celsius: 150fahr =653.编程题输

12、入存款金额money存期year 和年利率rate,根据下列公式计算存款到期时的利息interest(税前),输出时保留2 位小数interest =money(1 +rate)year -money输入输出示例Enter money, year and rate:1000 3 0.025interest =76.894.编程题输入x,计算并输出下列分段函数f(x)的值(保留2 位小数),请调用sqrt 函数求平方根,调用pow 函数求幂 输入输出示例(共运行3 次)第一次运行:Enter x:10f(10.00) =3.16第二次运行:Enter x: -0.5f( -0.50) = -2.

13、75第三次运行:Enter x:0f(0.00) =0.005改错题改正下列程序中的错误,输入实数x,计算并输出下列分段函数f(x)的值,输出时保留1位小数。(源程序error02_4.cpp) 输入输出示例(共运行2 次)第一次运行:Enter x:10f(10.0) =0.1第二次运行:Enter x:234f(234.0) =234.0源程序(有错误的程序)#include int main(void) double x, printf(Enter x: n); scanf(=%f, x); if(x =10) y =1 /x else (x ! =10) y =x; printf(f(

14、%.2f) =%.lfnx y); return 0;6. 编程题输入2个整数num1和num2,计算并输出它们的和、差、积、商与余数。输入输出示例Enter num1: 5Enter num2: 35 +3 =85 -3 =25*3 =155 /3 =15 % 3 =27编程题(选作)输入2个整数time1和time2,表示火车的出发时间和到达时间,计算并输出旅途时间有效的时间范围是0000 2359(前两位表示小时,后两位表示分钟),不需要考虑出发时间晚于到达时间的情况输入输出示例(括号内为说明文字)Enter time1: 712 (出发时间是7:12)Enter time2: 1411 (到达时间是14:11)The train journey time is 6 hours 59 minutes8.编程题(选作)输入一个四位数,将其加密后输出方法是将该数每一位上的数字加9,然后除以10 取余,作为该位上的新数字,最后将千位和十位上的数字互换,百位和个位上的数字互换,组成加密后的新四位数输入输出示例(括号内为说明文字)Ent

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号