C语言第56课:实参与形参随堂实战

·第56课:实参与形参随堂实战

·例子:计算图形的面积

				#include<stdio.h>
				#include<stdlib.h>
				#include<math.h>
				/*
				圆:s = PI * r * r
				矩形: s = width * height
				三角形:s = width * height / 2
				*/
				//根据传入的半径,返回圆面积
				
				//************************函数原型
				double calcCircle(double);
				double calcRectangle(double,double);
				double calcTriangular(double,double);
				int validate(double);
				
				//************************函数定义
				
				double calcCircle(double r) //圆
				{
					//pow函数可以自己定义
					double s = 3.14*pow(r,2);
					//返回计算好的面积值
					return s;
				}
				
				double calcRectangle(double weight, double height) //矩形
				{
					return weight*height;
				}
				
				double calcTriangular(double weight, double height) //三角型
				{
					return weight*height/2;
				}
				
				int validate(double num)
				{
					return num > 0 ;    //如果num大于0,会返回一个非零值,表示真。
				}
				
				
				
				//************************函数调用
				int main()
				{
					double radius;         //用户输入半径
					double weight, height;  //图形的宽和高
					double s;              //图形的面积
					int choice;            //用户的选择
					printf("本系统支持三种图形的面积计算,请选择:\n");
					printf("1、圆\n");
					printf("2、矩形\n");
					printf("3、三角型\n");
					scanf("%d",&choice);
					switch(choice)
					{
					case 1:
					printf("请输入圆半径:");
					do{
						scanf("%lf",&radius);//录入
						if(!validate(radius))//如果没有通过验证,就打印一句提示
						{
						printf("所录入的内容不能为负,请重新输入一个正数!:");
						}
					}while(!validate(radius));//当验证不通过的时候重新录入
					//需要对用户的输入进行非负验证/让用户输入正确的值/拿到用户所输入的正确值
					s = calcCircle(radius);
					printf("图形的面积为:%.2lf\n",s);
						break;
				
					case 2:
						printf("请输入矩形的宽和高:");
						do{
						scanf("%lf%lf",&weight,&height);//录入
						if((!validate(weight))||(!validate(height)))//如果没有通过验证,就打印一句提示
						{
							printf("所录入的内容不能为负,请重新输入2个正数!:");
						}
						}while(!validate(radius));//当验证不通过的时候重新录入
						//需要对用户的输入进行非负验证/让用户输入正确的值/拿到用户所输入的正确值
						s = calcRectangle(weight,height);
						printf("图形的面积为:%.2lf\n",s);
						break;
				
					case 3:
						printf("请输入三角型的宽和高:");
						do{
						scanf("%lf%lf",&weight,&height);//录入
						if((!validate(weight))||(!validate(height)))//如果没有通过验证,就打印一句提示
						{
							printf("所录入的内容不能为负,请重新输入2个正数!:");
						}
						}while(!validate(radius));//当验证不通过的时候重新录入
						//需要对用户的输入进行非负验证/让用户输入正确的值/拿到用户所输入的正确值
						s = calcTriangular(weight,height);
						printf("图形的面积为:%.2lf\n",s);
						break;
					default:
						printf("本系统只支持3种图形,请在1-3之间选择!");
				
					}
					return 0;
				}
				

猜你喜欢

转载自blog.csdn.net/cxd15194119481/article/details/85337006