高级语言程序设计实验报告
实验一 选择结构程序设计
班级 179 学号 2011179 姓名 一、实验目的
1、 熟悉VC6.0编程环境。 2、 进一步熟悉用VC6.0调试C语言源程序的过程。 3、 熟练使用关系表达式和逻辑表达式作为if语句的条件判断。 4、 熟练掌握if语句和switch语句的使用方法。
二、实验内容及步骤
1、身高预测
每个做父母的都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后身高的因素有遗传、饮食习惯与坚持体育锻炼等。小孩成人后身高与其父母身高和自身性别密切相关。
设faHeight为其父身高,moHeight为其母身高,身高预测公式为: 男性成人时身高 = (faHeight + moHeight) * 0.(cm) 女性成人时身高 = (faHeight * 0.923 + moHeight) / 2(cm)
此外,如果喜爱体育锻炼,那么可增加身高2%,如果有良好的卫生饮食习惯,那么可增加身高1.5%。
编程从键盘输入小孩的性别(用字符型变量sex存储,输入字符F表示女性,输入字符M表示男性)、父母身高(用实型变量存储,faHeight为其父身高,moHeight为其母身高)、是否喜爱体育锻炼(用字符型变量sports存储,输入字符Y表示喜爱,输入字符N表示不喜爱)、是否有良好的饮食习惯等条件(用字符型变量diet存储,输入字符Y表示喜爱,输入字符N表示不喜爱),利用给定公式和身高预测方法对小孩的身高进行预测。 程序代码:
#include\"stdio.h\" #include\"conio.h\" main() {
char sex,sports,diet;
double faHeight,moHeight,height;
printf(\"请输入性别(M表示男/F表示女)\\n\"); scanf(\"%c\
printf(\"请输入父亲身高和母亲身高\\n\"); scanf(\"%lf%lf\printf(\"是否喜欢体育锻炼?(Y/N)\\n\"); sports=getche();
1
printf(\"\\n\");
printf(\"是否有良好的饮食习惯?(Y/N)\\n\"); diet=getche(); printf(\"\\n\");
if(sex=='F'||sex=='f')
height=(faHeight*0.923+moHeight)/2; if(sex=='M'||sex=='m')
height=(faHeight+moHeight)*0.; if(sports=='Y'||sports=='y') height=1.02*height; if(diet=='Y'||diet=='y') height=1.015*height;
printf(\"这个孩子成人后的身高为%lf厘米\\n\}
设计多组测试数据对程序进行测试,并观察运行结果。将程序的运行情况写在下面。 『运行结果:』
2、使用switch语句实现下面程序。
输入一个学生的两门课成绩(百分制),计算该生的总分并要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。总分在180分以上为‘A’,160~179分为‘B’,140~159分为‘C’,120~139分为‘D’,120分以下为‘E’。
具体要求:
①学生的两门课成绩通过键盘输入,成绩应该都为整数,输入之前要有提示信息。
②若输入的成绩不是百分制成绩,则给出错误提示信息,并且不再进行下面的等级评价;若输入的成绩是百分制成绩,则计算总分,并根据要求评价等级。
③按下面形式输出结果:
总分----〉等级 如: 186----〉A
2
把正确的程序源代码写在下面。 程序代码: #include int score,total=0; int i; for(i=0;i<2;) { printf(\"\\n请输入学生第%d门课的成绩(注意: 成绩应该为百分制的整数)\\n\scanf(\"%d\if(score>=0&&score<=100) { total+=score; i++; } else { printf(\"输入错误,请重新输入!\\n\"); continue; } } printf(\"\\n总分 ----〉等级\\n\"); switch(total/10) { case 20: case 19: case 18: printf(\"%4d ----〉A\\n\ break; 3 case 17: case 16: printf(\"%4d ----〉B\\n\ break; case 15: case 14: printf(\"%4d ----〉C\\n\ break; case 13: case 12: printf(\"%4d ----〉D\\n\ break; default: printf(\"%4d ----〉E\\n\ break; } getch(); return 1; } } 设计多组测试数据对程序进行测试,并观察运行结果。将程序的运行情况写在下面。 『运行结果:』 4 3、【选作】 给一个不多于5位的正整数,要求: ①求出它是几位数; ②分别打印出每一位数字; ③按逆序打印出各位数字,例如原数为321,应输出123。 程序代码: #include printf(\"请输入一个不多于5位的正整数:\"); int len; char num[6]; scanf(\"%s\ len=strlen(num); putchar('\\n'); if(len>5) { printf(\"这个数多于5位,请重新输入:\"); goto where; } else printf(\"这个数是 %d 位数. \\n\ putchar('\\n'); int g; for(g=0;g printf(\"逆序输出为:\\n\"); for(g=len-1;g>=0;g--) printf(\"%d \ 5 getchar(); getchar(); return 0; } 『运行结果:』 三、实验心得 6 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- xiaozhentang.com 版权所有 湘ICP备2023022495号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务