函數
函數的調用:
傳值調用:
##### 形參和實參分別佔用不一樣的空間,對形參中的值修改不會影響實參。(形參實例化後至關於實參的一份零時拷貝)
傳址調用:
###### 經過把實參的地址傳給形參,讓函數和函數外的變量創建聯繫,函數內部能夠直接操做函數外部的變量。
今日代碼:
#define _CRT_SECURE_NO_WARNINGS 1
/************************************************
* @Title:> Day11
* @Description:> Day11
* @author:> HuaGe
* @date:> 2020/10/19 16:05
***********************************************/
//函數
#include<stdio.h>
////比較兩個數的大小的函數
//int get_max(int x, int y)
//{
// int max = (x > y) ? x : y;
//
// return max;
//}
//int main()
//{
// int x, y;
// printf("請輸入兩個數,用空格隔開:");
// scanf("%d%d", &x, &y);
// int result = get_max(x, y);
// printf("兩個數中的最大值爲:%d\n", result);
//
// return 0;
// }
////寫一個函數交換兩個整形變量的內容
////函數
//void swep(int* x, int* y)
//{
// int m = 1;
// m = *x;
// *x = *y;
// *y = m;
//}
//
//int main()
//{
// int x = 10, y = 24;
// swep(&x, &y);
// printf("交換後:x=%d,y=%d\n", x, y);
//
// return 0;
//}
////寫一個函數能夠判斷一個數是否是素數
//void is_SuShu(int x)
//{
// int mark = 0;
// for (int i = 2; i < sqrt(x); i++) {
// if (x % i == 0) {
// printf("%d不是素數\n", x);
// mark++;
// break;
// }
// }
// if (mark == 0) {
// printf("%d是素數\n", x);
// }
//}
//
//int main()
//{
// int a = 12;
// is_SuShu(a);
//
// return 0;
//}
////寫一個函數判斷一年是否是閏年
//int is_RunNian(int x)
//{
// if ((x % 4 == 0 && x % 100 != 0) || (x % 400 == 0)) {
// return 1;
// }
// else {
// return 0;
// }
//
//}
//
//int main()
//{
// for (int year = 1000; year <= 3000; year++) {
// if (is_RunNian(year) == 1) {
// printf("%d\t", year);
// }
// /*else {
// printf("%d不是閏年\n", year);
// }*/
// }
//}
////二分查找
//int er_Search(int arr[], int x, int sz)
//{
// int left = 0;
// int right = sz - 1;
// while (left <= right) {
// int i = (left + right) / 2;//變量i用於標記要查找數的位置。
// if (x == arr[i]) {
// return i;
// }
// else if (x > arr[i]) {
// left = i + 1;
// }
// else {
// right = i - 1;
// }
// }
// return -1;
//}
//
//int main()
//{
// int arr1[] = { 1,3,6,12,17,19 };//arr1:在此數組中查找
// int y = 6;//y:要查找的數
// int k = sizeof(arr1) / sizeof(arr1[0]);
// printf("%d\n", k);
// int j = er_Search(arr1, y, k);
// if (-1 == j) {
// printf("該數組中沒有改元素\n");
// }
// else {
// printf("改數在數組中的位置爲:%d\n", j);
// }
//}
//引用頭文件
#include "num_Plus.h"
//寫一個函數,每調用一次這個函數,就會將num的值加一
//void num_Plus(int* num)
//{
// //*num++:++的優先級高於*,因此只能用下面這種方式,或者(*p)++;
// *num = *num + 1;
//}
int main()
{
int num = 0;
//調用函數
num_Plus(&num);
printf("num = %d\n", num); //num=1
num_Plus(&num);
printf("num = %d\n", num); //num=2
num_Plus(&num);
printf("num = %d\n", num); //num=3
//嵌套循環:printf函數的返回值是打印字符的個數
printf("%d\n", printf("%d", printf("%d", 43)));//4321
return 0;
}