首页 > 编程语言 > 详细

C语言实验报告三

时间:2020-03-29 15:49:50      阅读:59      评论:0      收藏:0      [点我收藏+]

实验项目:4.3.1if语句的应用;4.3.2switch-case的应用;4.3.3switch-case嵌套if语句的应用;4.3.4switch-case结构嵌套的应用;4.3.5分析程序___________________________________________
姓名:戴智琴__________实验地点:家________实验时间__2020.3.29______
一、实验目的与要求
1、掌握C语言逻辑值的表达方法(0代表“假”,1代表"真")
2、学会正确地使用关系式和逻辑表达式。
3、掌握各种形式的i语句语法和使用方法。if语句中if和else的匹配关系,以及if语句的嵌套。
4、熟练掌握switch语句的语法和使用方法,注意在switch语句中break语句的用法及switch语句的嵌套。
二、实验内容

1、实验练习:4.3.1

1问题的简单描述:输入箱子的长宽高,输出判断箱子是正方形还是长方形。
2实验代码:

#include<stdio.h>
int main()
{
	int l,w,h;
	printf("请输入箱子的长,宽,高:\n");
	scanf("%d%d%d",&l,&w,&h);
	if((l==w)&&(l==h)&&(w==h))/*如果长,宽,高相等,则为正方体*/
	printf("该箱子是正方体。\n");
	else
	printf("该箱子是长方体。\n");
	return 0;
}

3、问题分析:需要注意区分等号“==”和赋值“=”

2、实验练习:4.3.2 switch-case

1问题的简单描述:需要进行注释才能看懂代码
2实验代码:

#include<stdio.h>
main()
{
	int a,b,c,d,e,temp;/*a,b,分别为打印纸,墨盒的单价,c,d,e分别是购买的数量*/
	double x,y,z;/*x,y,z,分别为光盘的单价,实际付款数,应付款数*/
	printf("请输入打印纸,墨盒,光盘的数量:\n");
	scanf("%d,%d,%d",&c,&d,&e);
	a=18,b=132,x=4.5;
	y=a*c+b*d+x*e;
	switch(temp)
	{
		case0:z=(a*c+b*d+x*e);break;
		case1:z=0.95*(a*c+b*d+x*e);break;
		case2:z=0.94*(a*c+b*d+x*e);break;
		case3:z=0.93*(a*c+b*d+x*e);break;
		case4:z=0.92*(a*c+b*d+x*e);break;
		case5:z=0.90*(a*c+b*d+x*e);break;
		default:z=0.90*(a*c+b*d+x*e);break;
	}
	printf("应付款数:%.2f",z);
}

3问题分析:实际折扣问题与使用switch语句

3.实验练习:4.3.3

问题描述:任意输入某一年月,输出该月的天数。
实验代码

#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年%d月%d天",year,month,days);
}

3、问题分析:break莫相忘

4.实验练习:4.3.4

1、问题的简单描述
2、实验代码

#include<stdio.h>
int main()
{
	int a,b,c;
	float sum=0.0; 
	printf("请选择:1.日用品2.文具 3.食品\n");
	scanf("%d",&a);
	switch(a)
	{
	case1:printf("请选择:1.牙刷(3.5元/支)2.牙膏(6.2元/支)\n");
		printf("3.肥皂(2元/快)4.毛巾(8.6元/条)\n");
		scanf("%d",&c);
		printf("数量?");
		scanf("%d",&b);
		switch(c)
		{
		    case 1: sum=3.5*b;break;
			case 2: sum=6.2*b;break;
			case 3: sum=2*b;break;
			case 4: sum=8.6*b;break;
		}
		break;
	case2:printf("请选择:1.笔(3元/支)2.笔记本(1.2元/本)\n");
	      printf("请选择:3.文件夹(12元/个)4.文具盒(8.6元/个)\n");
	      scanf("%d",&b);
	      switch(c)
	      {
	      	case 1: sum=3*b;break;
	      	case 2: sum=1.2*b;break;
	      	case 3: sum=12*b;break;
	      	case 4: sum=8.6*b;break;
		  }
		  break;
	case3:printf("请选择:1.白糖(3.6元/包)2.盐(1元/包)/n");
	      printf("请选择:3.饼(2元/个)4.方便面(3.6元/包)/n");
	      scanf("%d",&b);
	      switch(c)
	      {
	      	case 1: sum=3.6*b;break;
	      	case 2: sum=1*b;break;
	      	case 3: sum=2*b;break;
	      	case 4: sum=3.6*b;break;
		  }
		  break;
    }
	printf("总计:%.2f元\n",sum);
	return 0;
	
}

3、问题分析:熟练使用嵌套,西文半角

5.实验练习:4.3.5

1.问题的简单描述:无
2.实验代码

#include<stdio.h>
int main()
{
	double x=1000/3.0;
	double y=x-333.0;
	double z=3*y-1.0;
	printf("x=%f\n",x);
	printf("y=%f\n",y);
	printf("z=%f\n",z);
	if(z==0)printf("z==0.\n");
	    else printf("z不等于0.\n");
	    return 0;
 } 

3.问题分析:注意输入勿打错
三、项目实训:计算器的实现
1、设计过程中遇到的问题及改进的方法:简单易懂,多学习
2、代码

#include<stdio.h>
int main()
{
	int a,b,x;
	char c;
	printf("请输入算法:"); 
	scanf("%d%c%d",&a,&c,&b);
	switch(c)
	{
		case 1: x=a+b;break;
		case 2: x=a-b;break;
		case 3: 
		if(b!=0)
		x=a/b;break;
		else
		printf("输入错误"); 
			case 4: x=a*b;break;
	}
	printf("计算结果为:%d",x);
 } 

四、实验小结(剖析个人得失)

仔细注意输入的符号是否是正确的,数学表达式与C语言的结合。

C语言实验报告三

原文:https://www.cnblogs.com/3e4d/p/12592640.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!