c语言程序设计实验报告
实验项目:基本的程序语句以及程序的简单算法设计实验
姓名:廖云福 实验地点:514教室 实验时间:4月3日
实验4.3.1
一,实验目的与要求
1,(1)掌握c语言逻辑运算和关系运算的规则
(2)学会正确地使用关系表达式和逻辑表达式
(3)掌握if_else语句的使用方法
(4)掌握基本输入输出函数的基本功能,调用方法,输入输出格式控制规定等
2,(1)掌握结构化程序的算法描述方法。
(2)了解c语言的基本语法要素,能熟练运用运算符,即运算符的优先级和结核性,运算规则等
二.问题描述:读人三个分别表示箱子长,宽,高的整数值判断并输出该箱子是正方体还是长方体。
三,程序代码
###### #include<stdio.h>
int main()
{
int,l,w,h;
printf("请输入箱子的长,宽,高:\n");
scanf("%d%d%d",&l,&w,&h);
if(l==w&&w==h)/*如果长,宽,高相等,则为正方体*/
printf("该箱子是正方体。\n");
else
printf("该箱子是长方体。\n");
return 0;
}
问题分析:主要是考查对if_else语句的应用
实验4.3.2
一,实验目的:
1,掌握算术运算符和运算规则
2,掌握switch/case语句的使用方法
二,问题描述
编一程序实现如下功能:商店有打印纸(18元/本),墨盒(132元/个),光盘(4.5元/片)出售,商店进行优惠酬宾活动。具体做法如下:顾客购买商品的总额达到了100元,优惠5%;达到了200元以上,优惠6%;达到了300以上,优惠7%;达到了400以上,优惠8%;达到了500以上,优惠10%。根据不同的购买数量,打印应付货款。
三,实验代码
###### #include<stdio.h>
int main()
{
int i;
float x,y,n,z;
printf("请输入打印纸、墨盒、光盘的数量:x,y,n,\n");
scanf("%f%f%f",&x,&y,&n);
printf("总价:z\n");
z=18*x+132*y+4.5*n;
i=z/100;
switch(i)
{
case 1:z=z*95%;break;
case 2:z=z*94%;break;
case 3:z=z*93%;break;
case 4:z=z*92%;break;
default:z=z*90%;break;
}
printf("总计:%.2f元\n",z);
}
实验4.3.3
一,实验目的
1.学会正确地使用关系表达式和逻辑表达式;
2.掌握switch/case结构与if/else嵌套结构之间的转化。
二,问题描述:
输入某一年月,输出该月的天数。
三,实验代码:
###### #include<stdio.h>
int main()
{
int year,month,days;
printf("please enter year and month:\n");
scanf("%d%d",&year,&month);
switch(month)
{
case 2:if(year%4==0&&year%100!=0||year%400==0)
days=29;
else
days=28;
break;
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:days=31;break;
case 4:
case 6:
case 9:
case 11:days=30;break;
}
printf("%d",days);
}
实验4.3.4
一,实验目的:
1,本实验旨在巩固学生对编程概念的理解。
2.switch/case结构的嵌套使用。
3.掌握break语句与continue语句的用法。
二,问题描述:
编写一个自动售货机的程序。该程序应具有如下功能:有2级子菜单,一级子菜单是商品类型的选择;二级子菜单是具体商品的选择。顾客先选择商品类型,然后选择具体商品,输入购买数量。自动售货机根据选择的商品和输入的数量,计算并显示所选商品的总金额。
三,程序代码
###### #include<stdio.h>
int main()
{
int x,n,y;
float sum=0.0;
printf("请选择: 1.日用品 2.文具 3.食品\n");
scanf("%d",&x);
switch(x)
{
case 1:printf("请选择:1.牙刷(3.5元/支) 2.牙膏(6.2元/支)\n");
printf("3.肥皂(2元/块) 4.毛巾(8.6元/条)\n");
scanf("%d",&y);
printf("数量?") ;
scanf("%d",&n) ;
switch(y)
{
case 1:sum=3.5*n;break;
case 2:sum=6.2*n;break;
case 3:sum=2*n;break;
case 4:sum=8.6;break;
}
break;
case 2:printf("请选择:1.笔(3元/支) 2.笔记本(1.2元/个)\n");
printf("3.文件夹(12元/个) 4.文具盒(8.6元/个)\n");
scanf("%d",&y);
printf("数量?");
scanf("%d",&n) ;
switch(y)
{
case 1:sum=3*n;break;
case 2:sum=1.2*n;break;
case 3:sum=12*n;break;
case 4:sum=8.6*n;break;
}
break;
case 3:printf("请选择:1.白糖(3.6元/包) 2.盐(1元/包)\n");
printf("3.饼(2元/个) 4.方便面(3.6元/条)\n");
scanf("%d",&y);
printf("数量?");
scanf("%d",&n);
switch(y)
{
case 1:sum=3.6*n;break;
case 2:sum=1*n;break;
case 3:sum=2*n;break;
case 4:sum=3.6*n;break;
}
break;
}
printf("总计:%.2f元\n",sum);
} ```
实验4.3.5
分析程序
运行下面程序,分析输出结果,并写入实验报告中。
#include<stdio.h>
int main()
{
double x=1000/3.0;
double y=x-333.0;
double z=3*y-1.0;
printf("x=%lf\n",x);
printf("y=%lf\n",y);
printf("z=%lf\n,z");
if(z==2)printf("z==0.\n");
else printf("z不等于0.\n");
return 0;
} ```
程序运行结果如图显示