6.定義函數的終極絕殺
思路:
三個問題:
1.我定義函數,是為了干什么事情 函數體、
2.我干完這件事,需要什么才能完成 形參
3.我干完了,調用處是否需要繼續使用 返回值類型
需要繼續使用 必須寫
不需要返回 void
小程序
#include <stdio.h>
//需求:給定兩個長方形,判斷誰的面積更大?如何定義函數
//1.我定義函數 求長方形的面積
//2.需要什么才能完成? 長/寬
//3.是否要繼續使用? 要,需要判斷double getArea(double lenth, double width)
{double area = lenth * width;return area;
}int main()
{double area1 = getArea(6.7, 7.8);double area2 = getArea(5.6, 8.8);if (area1 > area2){printf("第一個長方形更大");}else if (area1 < area2){printf("第二個長方形更大");}return 0;
}
7.函數的注意事項
8.C語言中 的常見函數(math)
#include<stdio.h>
#include<math.h>int main()
{/*math.h:poww() 冪sprt() 平方根ceil() 向上取整floor() 向下取整abs() 絕對值time.h:time() 獲取當前時間*///1.powdouble res1 = pow(2, 3);printf("%lf\n", res1);//2.sqrtdouble res2 = sqrt(9);printf("%lf\n", res2);//3.ceildouble res3 = ceil(13.2);printf("%lf\n", res3);//4.floordouble res4 = floor(13.2);printf("%lf\n", res4);//5.absint res5= abs(-45);printf("%d\n", res5);return 0;
}
9.C語言的常見函數(time)
#include <stdio.h>
#include <time.h>int main()
{/*time.h:time() 獲取當前時間*///time() 獲取當前時間//形參:表示獲取的當前時間是否需要在其他地方進行存儲// 一般來講,不需要在其他地方進行存儲的,MULL(大寫)//返回值:long long//結果是什么呢//從1970.1.1 0:0:0 開始過了1709817925秒的那個時間點long long res = time(NULL);printf("%lld\n", res);//1709817925return 0;
}
10.隨機數
小程序1
#include <stdio.h>
#include <stdlib.h>int main()
{/*隨機數<stdio.h> standard 標準庫srand() 設置種子rand() 獲取隨機數*///1.設置種子//初始值,因為每一個隨機數都是通過前一個數字再結合一系列復雜的計算得到的srand(1);//2.獲取隨機數int num = rand();//3.輸出打印printf("%d\n", num);return 0;}
小程序2
//1.設置種子
//初始值,因為每一個隨機數都是通過前一個數字再結合一系列復雜的計算得到的
srand(90);//2.獲取隨機數
for (int i = 1; i <= 10; i++)
{//2.獲取隨機數int num = rand();//3.輸出打印printf("%d\n", num);
}
11.隨機數的兩個小弊端
小程序
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int main()
{/*隨機數的兩個小弊端:1.種子不變,隨機數結果是固定的2.隨機數的范圍*///1.設置種子//種子:不能固定不變,結果就不變//用一個變化的數據去充當種子 時間srand(time(NULL));for (int i = 1; i <= 10; i++){//2.獲取隨機數int num = rand();//3.輸出打印printf("%d\n", num);}return 0;
}
小程序(解決)
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int main()
{/*隨機數的兩個小弊端:1.種子不變,隨機數結果是固定的2.隨機數的范圍默認范圍:0~32767任意的范圍之內獲取一個隨機數:1~1007~238~49絕招:用于生產任意范圍之內的隨機數1.把這個范圍變成包頭不包尾,包左不包右 1-1012.拿著尾巴-開頭 101-13.修改代碼*/srand(time(NULL));//2.獲取隨機數int num = rand() % 100 + 1;//3.輸出打印printf("%d\n", num);return 0;
}
12.猜數字小游戲
#include <stdio.h>
#include<stdlib.h>
#include<time.h>int main()
{/*生成1-100之間的隨機數使用鍵盤錄入去猜,猜中為止*///1.生成1-100之間的隨機數srand(time(NULL));int number = rand() % 100 + 1;//2.利用循環 + 鍵盤錄入去猜int guess;while (1){printf("請輸入要猜的數字:\n");scanf_s("%d", &guess);//拿著guess跟隨機數進行比較if (guess < number){printf("小了\n");}else if (guess > number){printf("大了\n");}else{printf("中了\n");break;}}}