高级语言程序设计实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

高级语言程序设计实验报告

实验一选择结构程序设计

班级 179 学号 2011179 姓名

一、实验目的

1、熟悉编程环境。

2、进一步熟悉用调试C语言源程序的过程。

3、熟练使用关系表达式和逻辑表达式作为if语句的条件判断。

4、熟练掌握if语句和switch语句的使用方法。

二、实验内容及步骤

1、身高预测

每个做父母的都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后身高的因素有遗传、饮食习惯与坚持体育锻炼等。小孩成人后身高与其父母身高和自身性别密切相关。

设faHeight为其父身高,moHeight为其母身高,身高预测公式为:

男性成人时身高 = (faHeight + moHeight) * (cm)

女性成人时身高 = (faHeight * + moHeight) / 2(cm)

此外,如果喜爱体育锻炼,那么可增加身高2%,如果有良好的卫生饮食习惯,那么可增加身高%。

编程从键盘输入小孩的性别(用字符型变量sex存储,输入字符F表示女性,输入字符M 表示男性)、父母身高(用实型变量存储,faHeight为其父身高,moHeight为其母身高)、是否喜爱体育锻炼(用字符型变量sports存储,输入字符Y表示喜爱,输入字符N表示不喜爱)、是否有良好的饮食习惯等条件(用字符型变量diet存储,输入字符Y表示喜爱,输入字符N表示不喜爱),利用给定公式和身高预测方法对小孩的身高进行预测。

程序代码:

#include""

#include""

main()

{

char sex,sports,diet;

double faHeight,moHeight,height;

printf("请输入性别(M表示男/F表示女)\n"); scanf("%c",&sex);

printf("请输入父亲身高和母亲身高\n"); scanf("%lf%lf",&faHeight,&moHeight); printf("是否喜欢体育锻炼(Y/N)\n");

sports=getche();

printf("\n");

printf("是否有良好的饮食习惯(Y/N)\n"); diet=getche();

printf("\n");

if(sex=='F'||sex=='f')

height=(faHeight*+moHeight)/2;

if(sex=='M'||sex=='m')

height=(faHeight+moHeight)*;

if(sports=='Y'||sports=='y')

height=*height;

if(diet=='Y'||diet=='y')

height=*height;

printf("这个孩子成人后的身高为%lf厘米\n",height);

}

设计多组测试数据对程序进行测试,并观察运行结果。将程序的运行情况写在下面。

『运行结果:』

2、使用switch语句实现下面程序。

输入一个学生的两门课成绩(百分制),计算该生的总分并要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。总分在180分以上为‘A’,160~179分为‘B’,140~159分为‘C’,120~139分为‘D’,120分以下为‘E’。

具体要求:

①学生的两门课成绩通过键盘输入,成绩应该都为整数,输入之前要有提示信息。

②若输入的成绩不是百分制成绩,则给出错误提示信息,并且不再进行下面的等级评价;若输入的成绩是百分制成绩,则计算总分,并根据要求评价等级。

③按下面形式输出结果:

总分----〉等级

如: 186----〉A

把正确的程序源代码写在下面。

程序代码:

#include<>

#include<>

int main()

{

int score,total=0;

int i;

for(i=0;i<2;)

{

printf("\n请输入学生第%d门课的成绩(注意: 成绩应该为百分制的整数)\n",i+1); scanf("%d",&score);

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",total); break;

case 17:

case 16:

printf("%4d ----〉B\n",total); break;

case 15:

case 14:

printf("%4d ----〉C\n",total); break;

case 13:

case 12:

printf("%4d ----〉D\n",total); break;

default:

printf("%4d ----〉E\n",total); break;

相关文档
最新文档