1. 程式人生 > >C語言第56課:實參與形參隨堂實戰

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; }