Login
Immutable PageDiscussionInfoAttachments
solanumaple/programming講習2015/examplefunction

MMA

いろいろな関数

二変数関数

   1 #include<stdio.h>
   2 int mul(int x, int y){
   3   return x * y;
   4 }
   5 int main(void){
   6   printf("%d\n", sum(2, 3)); // 6
   7 }

定数関数

実装することに意味はないが, こんなこともできるという例.

   1 #include<stdio.h>
   2 int five(int x){
   3   return 5;
   4 }
   5 int main(void){
   6   printf("%d\n",five(2)); // 5
   7 }

   1 #include<stdio.h>
   2 int two(void){
   3   return 2;
   4 }
   5 int main(void){
   6   printf("%d\n",two()); // 2
   7 }

値を返さない関数

数学的には関数と呼ばないほうがいい.

   1 #include<stdio.h>
   2 void show(int x){
   3   printf("答えは%dです.\n", x);
   4 }
   5 int main(void){
   6   show(3); // 答えは3です.
   7 }

引数に配列

   1 #include<stdio.h>
   2 void func(int arr[]){
   3   arr[0] = 4;
   4   arr[1] = 5;
   5 }
   6 int main(void){
   7   int array[2] = {2, 3};
   8   printf("%d %d\n", array[0], array[1]); // 2 3
   9   func(array);
  10   printf("%d %d\n", array[0], array[1]); // 4 5
  11 }

引数として渡された変数の値が書き換わるのはポインタ(配列)のときのみ

   1 #include<stdio.h>
   2 void func(int x){
   3   x = 4
   4 }
   5 int main(void){
   6   int n = 2;
   7   printf("%d\n", n); // 2
   8   func(n);
   9   printf("%d\n", n); // 2
  10 }

solanumaple/programming講習2015/examplefunction (last edited 2015-06-24 20:10:35 by solanumaple)