C语言第三天-函数,数组

函数:

返回值 函数名称(参数) {主体}

/* 函数返回两个数中较大的那个数 */
int max(int num1, int num2) //函数声明
{
   int result;//参数类型
 
   if (num1 > num2)
      result = num1;
   else
      result = num2;
 
   return result; 
}

传值方式调用函数

/* 函数定义 */
void swap(int x, int y)
{
   int temp;

   temp = x; /* 保存 x 的值 */
   x = y;    /* 把 y 赋值给 x */
   y = temp; /* 把 temp 赋值给 y */
  
   return;
}

引用方式调用函数

/* 函数定义 */
void swap(int *x, int *y)
{
   int temp;
   temp = *x;    /* 保存地址 x 的值 */
   *x = *y;      /* 把 y 赋值给 x */
   *y = temp;    /* 把 temp 赋值给 y */
  
   return;
}

作用域规则

局部变量

#include <stdio.h>
 
int main ()
{
  /* 局部变量声明 */
  int a, b;
  int c;
 
  /* 实际初始化 */
  a = 10;
  b = 20;
  c = a + b;
 
  printf ("value of a = %d, b = %d and c = %d\n", a, b, c);
 
  return 0;
}

全局变量

#include <stdio.h>
 
/* 全局变量声明 */
int g;
 
int main ()
{
  /* 局部变量声明 */
  int a, b;
 
  /* 实际初始化 */
  a = 10;
  b = 20;
  g = a + b;
 
  printf ("value of a = %d, b = %d and g = %d\n", a, b, g);
 
  return 0;
}

初始化局部变量和全局变量

当局部变量被定义时,系统不会对其初始化,您必须自行对其初始化。定义全局变量时,系统会自动对其初始化,如下所示:

数据类型 初始化默认值
int 0
char '\0'
float 0
double 0
pointer NULL

数组:

//声明数组
double balance[10];
//初始化数组
double balance[5] = {1000.0, 2.0, 3.4, 7.0, 50.0};
balance[4] = 50.0;//为数组中某个元素赋值

枚举

enum 枚举名 {枚举元素1,枚举元素2,……};
enum season {spring, summer=3, autumn, winter};

猜你喜欢

转载自blog.csdn.net/WMY10001/article/details/82772475