计算机科学与技术第2次上机实验

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

工程大学

《程序设计基础》实验报告

基础实践二

姓名:麦豆班级:

学号:

实验时间: 2018 年 4 月 19 日

工程大学计算机基础课程教学中心

实验题目1:输入一个整数,如果输入的数是偶数或者负数,则输出其平方,否则输出其一半的值

设计思想: 将数用2取余是否为0判断奇偶,与0判断大小判断正负,调用库函数来实现平方,在if语句中用到逻辑运算符||,同时在将奇数变为一半时用到了强制类型转换.

实验代码及注释:

#include

#include

#include

//输入一个整数,如果输入的数是偶数或者负数,则输出其平方,否则输出其一半的值

int main()

{

double y=2,z ;//二次方

int x;//输入的数

printf("请输入一个数:");

scanf("%d",&x);

if(((x%2)==0) || (x<0)) //利用if语句,将数用2取余是否为0判断奇偶,与0判断大小判断正负

{

x=(int)pow((int)x , y);//调用库函数来实现平方

printf("%d",x);

}

else

{ z=(double)x/2;//将x值强制转换赋给double型变量z

printf("%.1lf",z);

}

return 0;

}

验证与结论:

总结与心得体会:

真正明白了强制类型转换不改变变量类型,仅仅给变其数值的类型.同时对逻辑运算符有了更深的认识,另外知道了pow函数的两个变量均为double型int是不适用的

实验题目2:编写程序,计算购贷款,请输入购货金额,输出实际付款金额.购物折扣率如下:购货金额<=500元不打折

500元<购货金额<=1000元 9折

1000元<购货金额 8折

分别用if语句,switch语句编程.

设计思想:在用switch语句编写时先用if语句来对switch变量c 赋值,再用switch来进行运算

在用if语句编写时直接用if来对输入的数进行判断选择相应的运算语句来得到最后的结果.

Switch语句实验代码及注释:

#include

#include

//编写程序,计算购贷款,请输入购货金额,输出实际付款金额int main()

{

int c;//switch语句变量

double money ;//定义变量类型

printf("请输入购货金额:");

scanf("%lf",&money);

if (money<=500)//用if语句对c赋值

{

c=1;

}

else if(money<=1000)

{

c=2;

}

else

{

c=3;

}

switch (c)

{

case 1:

break ;

case 2:

money = money*0.9;

break;

case 3:

money = money*0.8;

break;

default:

printf("输入错误");

}

printf("实际付款金额为:%.2f\n",money); return 0;

}

If语句实验代码及注释:

#include

#include

int main()

{

double money ;//定义变量类型

printf("请输入购货金额:");

scanf("%lf",&money);

if(money<0) //用if对值围进行判断

{

printf("金额不能为负数!");

}

else if (money<=500&&money>=0)

printf("实际付款金额为:%.2f\n",money); else if(money<=1000)

{

money=money*0.9;

printf("实际付款金额为:%.2f\n",money); }

else

{

money=money*0.8;

printf("实际付款金额为:%.2f\n",money);

}

return 0;

}

验证与结论:

总结与心得体会:

If与switch语句各有优劣,switch语句可以提高运算速度,但相应也

有一些缺点,尤其对变量c的值,有时不得不借助if语句,反而繁琐运算速度变慢

实验题目3:输入四个整数,求其前两个数中较小的数与后两个数中较大的数之和.

设计思想:定义6个变量,其中两个变量为较小数与较大数,将第一个数暂时存储在最小值中,将第三个数暂时存储在最大值中,利用if语句判读若第一个数不为最小值重新赋值,若第三个数不为最大值重新赋值,得到前两个数中最小值和后两个数中最大值.最后对两数求和. 实验代码及注释:

#include

#include

int main()

{

int a,b,c,d,minnumber,maxnumber,sum;//定义整型变量

printf("请输入四个数:");

scanf("%d%d%d%d",&a,&b,&c,&d);

minnumber=a;//将第一个数暂时存储在最小值中

maxnumber=c;//将第三个数暂时存储在最大值中

if(a>b)

相关文档
最新文档