12-関数1
22457 ワード
一、関数とは何か
/******************************************************
一、関数とは何か
1、Cプログラムの基本ユニット
Cプログラムでは,計画,作成,デバッグを容易にするために,プログラムをモジュール化して作成する必要がある.
加算減算法
2、プログラムを実現するためのいくつかの具体的な機能
各モジュールは単一の機能を実現する.
3、関数の注意:
(1)1つのプログラムに1つの主関数しかありません.必ずあります.
(2)1つのソースファイルは、1つ以上の関数から構成される.
(3)C言語では2つの関数名を重複することはできない.
(4)ライブラリ関数:システムによって提供される関数で、指定されたヘッダファイルを含める必要があります.
stdio.h: printf() scanf()
string.h: strcmp() strlen()
(5)カスタム関数:ユーザが実現したい機能を実現するために自分で作成した.
一、関数の使い方
1、関数の宣言--システム関数の戻り型関数の名前関数のパラメータを教えます.宣言しないと間違って報告されます.
(1)関数のタイプ関数名(タイプ1パラメータ1,タイプ2パラメータ2,タイプ3パラメータ3......タイプnパラメータn);
(2)関数のタイプ関数名(タイプ1,タイプ2,タイプ3…タイプn);
(3)関数定義白呼び出し関数の前に,定義を宣言としてデフォルト設定する.(この場合はなるべく避ける)
データ型-->戻り値のタイプ
void------空タイプ
int------整型
char-----文字型
注意:関数名は自分で名前を付けます.
2、関数の定義:関数にコード実装機能を記述する.
データ型関数名(タイプパラメータ1、タイプパラメータ2、タイプパラメータ3......タイプパラメータn)
{
機能コード;
}
注意:文を返します
(1)returnは関数の終了を表し,returnの後の値を返す.
(2)returnのデータ型は,最後に関数のデータ型に変換される.
char Fun()/関数のタイプはchar
{
int num=65;
return num;//返されるタイプの整数
}
printf("%d",Fun()); //65
printf("%c",Fun()); //A
3、関数の呼び出し
(1)文として呼び出す.
Welcome();
(2)他の関数のパラメータとして呼び出す.
printf("%d+%d=%d", iNumber1,iNumber2, Sum(iNumber1, iNumber2));
(3)式として呼び出す.
sum = Sum(iNumber1, iNumber2);
注意:関数パラメータ
(1)形式パラメータ:形式上のパラメータ.関数の定義時に括弧の中に表示されます.
int Sum(int num1, int num2);
パラメータ:num 1,num 2
(2)実際のパラメータ:実際に処理する必要があるパラメータ.関数呼び出し時にカッコ内.
sum = Sum(iNumber1, iNumber2);
実相:iNumber 1,iNumber 2
転載先:https://www.cnblogs.com/tiantiancode/p/11130271.html
/******************************************************
一、関数とは何か
1、Cプログラムの基本ユニット
Cプログラムでは,計画,作成,デバッグを容易にするために,プログラムをモジュール化して作成する必要がある.
加算減算法
2、プログラムを実現するためのいくつかの具体的な機能
各モジュールは単一の機能を実現する.
3、関数の注意:
(1)1つのプログラムに1つの主関数しかありません.必ずあります.
(2)1つのソースファイルは、1つ以上の関数から構成される.
(3)C言語では2つの関数名を重複することはできない.
(4)ライブラリ関数:システムによって提供される関数で、指定されたヘッダファイルを含める必要があります.
stdio.h: printf() scanf()
string.h: strcmp() strlen()
(5)カスタム関数:ユーザが実現したい機能を実現するために自分で作成した.
1 //============================
2 #include //
3
4
5 void Hello();
6 int CalcYear(int age); //
7
8 int main() //
9 {
10 Hello();
11 return 0;
12 }
13
14
15 void Hello()
16 {
17 int iAge, iYear;
18 printf(" , :
");
19 scanf("%d", &iAge);
20
21 iYear = CalcYear(iAge);
22 printf(" %d 。
", iYear);
23 }
24
25 //
26 int CalcYear(int age)
27 {
28 int iYear;
29 iYear = 2016 - age;
30 return iYear;
31 }
一、関数の使い方
1、関数の宣言--システム関数の戻り型関数の名前関数のパラメータを教えます.宣言しないと間違って報告されます.
(1)関数のタイプ関数名(タイプ1パラメータ1,タイプ2パラメータ2,タイプ3パラメータ3......タイプnパラメータn);
(2)関数のタイプ関数名(タイプ1,タイプ2,タイプ3…タイプn);
(3)関数定義白呼び出し関数の前に,定義を宣言としてデフォルト設定する.(この場合はなるべく避ける)
データ型-->戻り値のタイプ
void------空タイプ
int------整型
char-----文字型
注意:関数名は自分で名前を付けます.
2、関数の定義:関数にコード実装機能を記述する.
データ型関数名(タイプパラメータ1、タイプパラメータ2、タイプパラメータ3......タイプパラメータn)
{
機能コード;
}
注意:文を返します
(1)returnは関数の終了を表し,returnの後の値を返す.
(2)returnのデータ型は,最後に関数のデータ型に変換される.
char Fun()/関数のタイプはchar
{
int num=65;
return num;//返されるタイプの整数
}
printf("%d",Fun()); //65
printf("%c",Fun()); //A
3、関数の呼び出し
(1)文として呼び出す.
Welcome();
(2)他の関数のパラメータとして呼び出す.
printf("%d+%d=%d", iNumber1,iNumber2, Sum(iNumber1, iNumber2));
(3)式として呼び出す.
sum = Sum(iNumber1, iNumber2);
注意:関数パラメータ
(1)形式パラメータ:形式上のパラメータ.関数の定義時に括弧の中に表示されます.
int Sum(int num1, int num2);
パラメータ:num 1,num 2
(2)実際のパラメータ:実際に処理する必要があるパラメータ.関数呼び出し時にカッコ内.
sum = Sum(iNumber1, iNumber2);
実相:iNumber 1,iNumber 2
1 //========================
2 #include
3
4 #define MAX 1000
5
6 void CalcLen();
7
8 int main()
9 {
10 //1
11 CalcLen();
12
13 //2
14 return 0;
15 }
16
17 void CalcLen()
18 {
19 int i;
20 char cArray[MAX]; //
21 scanf("%s", &cArray);
22
23 for (i = 0; cArray[i] != '\0'; i++); //i 0 i+1
24 printf(" %d
", i);
25 }
1 //============================================
2 #include
3
4 void Welcome(); //
5 int Sum(int,int); //
6 int Sub(int num1, int num2);
7
8 int main()
9 {
10 int choice; //
11 int iNumber1, iNumber2; //
12
13 do
14 {
15 system("cls"); //
16 Welcome(); // ( Welcome , )
17 scanf("%d", &choice); //
18
19 switch (choice) //
20 {
21 case 1: // 1
22 {
23 int sum; //
24 printf(" !
:
"); //
25 scanf("%d %d", &iNumber1, &iNumber1); //
26
27 // Sum ( , iNumber1+iNumber2)
28 sum = Sum(iNumber1, iNumber2);
29 printf("%d+%d=%d", iNumber1,iNumber2, sum); // sum
30
31 getchar();
32 getchar();
33
34 }
35 break;
36
37 case 2:
38 {
39 int diff;
40 printf(" !
:
"); //
41 scanf("%d %d", &iNumber1, &iNumber2); //
42 diff = Sub(iNumber1, iNumber2);
43 printf("%d-%d=%d", iNumber1, iNumber2, diff); // sum
44 }
45 break;
46
47 case 3:
48 break;
49
50 case 4:
51 break;
52
53 default:
54 break;
55 }
56 } while (choice != 0);
57
58 return 0;
59 }
60
61
62 void Welcome()
63 {
64 printf( //
65 "
"
66 "\t\t================================================
"
67 "\t\t| |
"
68 "\t\t================================================
"
69 "\t\t| |
"
70 "\t\t| 1、 |
"
71 "\t\t| |
"
72 "\t\t| 2、 |
"
73 "\t\t| |
"
74 "\t\t| 3、 |
"
75 "\t\t| |
"
76 "\t\t| 4、 |
"
77 "\t\t| |
"
78 "\t\t================================================
");
79
80 printf(" :
"); //
81 }
82
83
84 int Sum(int num1, int num2)
85 {
86 int sum; //
87 sum = num1 + num2; //sum = iNumber1+iNumber2;
88 return sum; //
89 }
90
91 int Sub(int num1, int num2)
92 {
93 int poor; //
94 poor = num1 - num2; //sum = iNumber1-iNumber2;
95 return poor; //
96 }
97
98
99 //getchar();
100 //#include kbhit()
101 //getch();
転載先:https://www.cnblogs.com/tiantiancode/p/11130271.html