C6-函數

一、函數定義
這裏寫圖片描述

二、函數調用
三、函數聲明
四、數組作爲參數
五、函數嵌套
六、函數遞歸

代碼:

// .m文件中放函數的定義, .h函數放聲明
//不要忘記包含這個文件

#include “MYFUN.h”
// #import “MYFUN.h”

//函數
// 定義函數(在主函數的上面定義)
// void->空,當返回值類型爲void時,代表沒有返回值,當參數類型爲void時,代表沒有參數
// 定義函數第一種形式
// 返回值類型 函數名(參數)
// {
//   要實現的功能
// }

//void funA(int n)
//{
// printf(“xiaocheng “);
//}
//int main(int argc, const char * argv[]) {
// funA(0);
// return 0;
//}

 //打印100個‘a'

//void funA(void)
//{
// for (int i = 0; i < 100; i++) {
// printf(“a “);
// }
//}
//
//int main(int argc, const char * argv[]) {
// funA();
// return 0;
//}

// 定義函數的第二種形式
// 返回值類型 函數名(參數1類型 參數名1,參數2類型 參數名2, 參數3類型...)
// {
//   要實現的功能
// }

//void funB(int a, char c)
//{
// printf(“%d\n”, a);
//}
//int main(int argc, const char * argv[]) {
// //調用函數
// //funA();
//
//// funB(3000);
// // 調用函數時加的參數叫“實參”
// int temp = 3000;
// funB(temp, ‘h’);
// return 0;
//}

//輸入兩個數,利用函數計算乘積

//void funB(int a, int b)
//{
// printf(“%d\n”, a*b);
//}
//int main(int argc, const char * argv[]) {
// int c = 0, b = 0;
// printf(“請輸入兩個數:\n”);
// scanf(“%d%d”, &c, &b);
// funB(c, b);
// return 0;
//}

//輸入打印數量,並打印

//void funA(int n)
//{
// //此處用輸入使定義的void無意義
// //printf(“請輸入數量:\n”);
// //scanf(“%d”, &n);
// for (int i = 0; i < n; i++) {
// printf(“xiaocheng “);
// }
//}
//int main(int argc, const char * argv[]) {
// // int m = 0;
// // printf(“請輸入數量:\n”);
// // scanf(“%d”, &m);
// funA(0);
// return 0;
//}

// 第三種形式
// 返回值類型 函數名(參數)
// {
//     要實現的功能
//     return 返回值(類型要與定義時的類型匹配)
// }

//int funD(void)
//{
// printf(“a\n”);
// return 3;
//}
//int main(int argc, const char * argv[]) {
// int ret = 0;
// //ret接收函數返回值
// //注意:ret的類型要與函數返回值類型匹配
// ret = funD();
// printf(“%d\n”, ret);
// return 0;
//}

// 3 * 5

//int funC(void)
//{
// int a = 3;
// int b = 5;
// return a * b;
//}
//int main(int argc, const char * argv[]) {
// int rel = 0;
// rel = funC();
// printf(“%d\n”, rel);
// return 0;
//}

//int funD(int a, int b)
//{
// //return a + b;
// int sum = 0;
// sum = a + b;
// return sum;
//}
//int main(int argc, const char * argv[]) {
// int ret = 0;
// ret = funD(3, 5);
// printf(“%d\n”, ret);
// return 0;
//}

//編寫函數int sumValue(int n):計算1到n的和

//int sumValue(int n)
//{
// int sum = 0;
// for (int i = 1; i <= n; i++) {
// sum += i;
// }
// return sum;
//}
//int main(int argc, const char * argv[]) {
// int m = 0;
// printf(“請輸入一個整數m:\n”);
// scanf(“%d”, &m);
// int sum = sumValue(m);
// printf(“%d”, sum);
// printf(“\n”);
// return 0;
//}

//編寫函數,返回三個整數的中間數

//int funC(int i, int j , int k)
//{
// int max = 0, min = 0, mid = 0;
// max = i > j ? i : j;
// max = max > k ? max : k;
// min = i < j ? i : j;
// min = min < k ? min : k;
// mid = i + j + k - max - min;
// return mid;
//}
//// int funC(int a, int b, int c)
//// {
//// int array[3] = {0};
//// array[0] = a;
//// array[1] = b;
//// array[2] = c;
//// for (int i = 0; i < 2; i++) {
//// for (int j = 0; j < 2 - i; j++){
//// if(array[j] > array[j + 1]) {
//// int temp = array[j];
//// array[j] = array[j + 1];
//// array[j + 1] = temp;
//// }
//// }
//// }
//// return array[1];
//// }
//int main(int argc, const char * argv[]) {
// int a = 0, b = 0, c = 0, mid = 0;
// printf(“請輸入三個數:\n”);
// scanf(“%d%d%d”, &a, &b, &c);
// mid = funC(a, b, c);
// printf(“中間數是:%d\n”, mid);
// return 0;
//}

// 2.

//int main(int argc, const char * argv[]) {
// int a = 0, b = 0, num = 0;
// char c = 0;
// printf(“請輸入(eg:3*4):\n”);
// scanf(“%d%c%d”, &a, &c, &b);
// num = funA(a, c, b);
// printf(“%d\n”, num);
// return 0;
//}

// 3.

//int main(int argc, const char * argv[]) {
// int a[3] = {1, 2, 3};
// testArr(a);
// return 0;
//}

// 4.

//int main(int argc, const char * argv[]) {
// int a = 0, cont = 0;
// printf(“請輸入一個正整數:\n”);
// scanf(“%d”, &a);
// cont = fun(a);
// printf(“%d\n”, cont);
//}

import

import “MYFUN.h”

//int funC(int i, int j , int k)
//{
// int max = 0, min = 0, mid = 0;
// max = i > j ? i : j;
// max = max > k ? max : k;
// min = i < j ? i : j;
// min = min < k ? min : k;
// mid = i + j + k - max - min;
// return mid;
//}

// 2.

//int funA(int i, char k, int j)
//{
// int cont = 0;
// if (‘+’ == k) {
// cont = i + j;
// }
// if (‘-’ == k) {
// cont = i - j;
// }
// if (‘*’ == k) {
// cont = i * j;
// }
// if (‘/’ == k) {
// cont = i / j;
// }
// return cont;
//}

// 3.

//void testArr(int a[], int cont)
//{
// for (int i = 0; i < cont; i++) {
// printf(“%d\n”, a[i]);
// }
//}

//求兩個數的最大值

//int findMax2(int a, int b)
//{
// int max = 0;
// max = a > b ? a : b;
// return max;
//}
//int findMax3(int a, int b, int c)
//{
// int max = 0;
// max = findMax2(a, b);
// max = findMax2(max, c);
// return max;
//}
//
//int findMax4(int a, int b, int c, int d)
//{
// int max = 0;
// max = findMax2(a, b);
// max = findMax3(max, c, d);
// return max;
//}

// 4.

//int fun(int a)
//{
// int cont = 0;
// if (a < 1) {
// return 1;
// }
// cont = a * fun(a - 1);
// return cont;
//}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章