C语言入门篇--函数及数组用法

目录
  • 函数
    • 1.函数的作用
    • 2.函数的构成
      • (1)返回值
      • (2)函数名
      • (3)形参列表
      • (4)函数体
  • 数组
    • 1.定义数组
      • 1.1不进行初始化
      • 1.2进行初始化
      • 1.3不给定数组元素个数
    • 2.数组的经典用法
      • 2.1求数组大小、元素大小、元素个数
      • 2.2遍历

面向过程编程:C语言是面向过程的语言;在C语言中,把大部分的功能以一个个函数呈现,就称之为面向过程编程;

函数

是面向过程编程最关键的语法结构。

1.函数的作用

1.从工程上讲,函数可以让我们的代码更具有结构性,让代码更好看。

2.函数可以提升代码的可维护性。即若代码出问题,只需要找到哪个函数出问题,则可基于此函数调试,而其他函数不受影响。

2.函数的构成

(1)返回值

得到并返回函数最后的结果。
返回值可以为void即啥也不返回。

(2)函数名

见名知意,一般得遵循大小驼峰式命名。
大驼峰:每一个单词的首字母都大写。
小驼峰:第一个单词的首字母小写,后面的单词的首字母全部大写。

(3)形参列表

接收参数即接收实参传来的值。

(4)函数体

实现函数的核心逻辑。

举例

#include <stdio.h>
int MyAdd(int _x, int _y)
{
	int _z = _x + _y;
	return _z;
}
int main()
{
	int x = 0;
	int y = 0;
	printf("请输入数据<x,y>:");
	scanf("%d %d", &x, &y);
	int result = MyAdd(x, y);
	printf("result:%d\n",result);
	return 0;
}

数组

数组是一组相同数据元素类型的集合。
数组中的数据元素在物理上是放在连续的存储空间里。

1.定义数组

1.1不进行初始化

int a[10];
char b[10];

!注意

(1)数组未初始化,则其内部数据元素的值为随机值。
(2)a,b为数组名,10为数组最多元素个数。
(3)数组下标从0开始,数组元素访问是用下标形式访问的,即a[10]代表a[0]~a[9]这10个元素。
(4)在访问数组是一定不能让数组下标越界,否则会造成程序崩溃等问题。
(5)数组的[ ]内只能是常数!

1.2进行初始化

int a[10]={1,2,3,4,5};

(1)a数组前五个元素被初始化,未被初始化的地方默认初始化为0

(2)若想给数组中的元素全部初始化为0,则可以写成int a[10]={0};

1.3不给定数组元素个数

int a[ ]={1,2,3,4,5};

编译器会自动根据初始化的个数来自动确定数组中元素的个数。

2.数组的经典用法

2.1求数组大小、元素大小、元素个数

#include <stdio.h>
int main()
{
	int arr[] = { 1, 2, 3, 4, 5 };
	printf("%d\n", sizeof(arr));//求整个数组的大小
	printf("%d\n", sizeof(arr[0]));//求数组中某个元素的大小
	printf("%d\n", sizeof(arr) / sizeof(arr[0]));//求数组元素的个数
	return 0;
}

2.2遍历

#include <stdio.h>
int main()
{
	int arr[] = { 1, 2, 3, 4, 5 };
	int num = sizeof(arr) / sizeof(arr[0]);
	//遍历
	int i = 0;
	for (; i < num; i++)
	{
		printf("arr[%d]:%d\n", i, arr[i]);
	}
	return 0;
}

以上就是C语言入门篇--函数及数组用法的详细内容,更多关于C语言的资料请关注我们其它相关文章!

(0)

相关推荐

  • 详解C语言中的函数、数组与指针

    1.函数:当程序很小的时候,我们可以使用一个main函数就能搞定,但当程序变大的时候,就超出了人的大脑承受范围,逻辑不清了,这时候就需要把一个大程序分成许多小的模块来组织,于是就出现了函数概念:   函数是C语言代码的基本组成部分,它是一个小的模块,整个程序由很多个功能独立的模块(函数)组成.这就是程序设计的基本分化方法: (1) 写一个函数的关键: 函数定义:函数的定义是这个函数的实现,函数定义中包含了函数体,函数体中的代码段决定了这个函数的功能: 函数声明:函数声明也称函数原型声明,函数的原

  • C语言中数组作为函数的参数以及返回值的使用简单入门

    函数通过数组作为参数 如果想通过一个一维数组作为函数的参数,就必须声明函数形式参数,使用以下三种方式与所有三个声明方法之一产生类似的结果,因为每一种方式告诉编译器,一个整数指针将会要被接收.类似的方式,可以使用多维数组形式参数. 方式-1 形式参数为指针如下.在下一章将学习什么是指针. void myFunction(int *param) { . . . } 方式-2 如下形式数组参数的大小: void myFunction(int param[10]) { . . . } 方式-3 如下形式

  • C语言中二维数组作为函数参数来传递的三种方法

    c语言中经常需要通过函数传递二维数组,有三种方法可以实现,如下: 方法一, 形参给出第二维的长度. 例如: #include <stdio.h> void func(int n, char str[ ][5] ) { int i; for(i = 0; i < n; i++) printf("/nstr[%d] = %s/n", i, str[i]); } void main() { char* p[3]; char str[][5] = {"abc&quo

  • 详解C语言用malloc函数申请二维动态数组的实例

    详解C语言用malloc函数申请二维动态数组的实例 C语言在程序运行中动态的申请及释放内存十分方便,一维数组的申请及释放比较简单. Sample one #include <stdio.h> int main() { char * p=(char *)malloc(sizeof(char)*5);//申请包含5个字符型的数组 free(p); return 0; } 是否申请二维动态内存也如此简单呢?答案是否定的.申请二维数组有一下几种方法 Sample two /* 申请一个5行3列的字符型

  • C语言入门篇--函数及数组用法

    目录 函数 1.函数的作用 2.函数的构成 (1)返回值 (2)函数名 (3)形参列表 (4)函数体 数组 1.定义数组 1.1不进行初始化 1.2进行初始化 1.3不给定数组元素个数 2.数组的经典用法 2.1求数组大小.元素大小.元素个数 2.2遍历 面向过程编程:C语言是面向过程的语言:在C语言中,把大部分的功能以一个个函数呈现,就称之为面向过程编程: 函数 是面向过程编程最关键的语法结构. 1.函数的作用 1.从工程上讲,函数可以让我们的代码更具有结构性,让代码更好看. 2.函数可以提升

  • C语言入门篇--定义宏#define的概述

    目录 1.什么是宏 2.为什么要有宏? 3.宏的用法 3.1定义宏 3.2宏常量 3.3"宏函数" 1.什么是宏 宏只做简单的文本替换,但一般在作为变量名出现或者在字符串中出现中是不会被替换的. 2.为什么要有宏? (1)便于代码的可维护性,对宏的内容进行修改,即可修改代码中所有用到此宏地方的内容. (2)方便阅读,见名知意. 3.宏的用法 3.1定义宏 格式: #define 标识符 内容 3.2宏常量 #include <stdio.h> #define M 1 int

  • C语言入门篇--初识结构体

    目录 1.为什么要有结构体 2.结构体的定义 2.1结构体类型的定义 2.2定义结构体普通变量及访问 2.3定义结构体指针变量及访问 1.为什么要有结构体 (1)之前int.char等类型描述的结构体非常单一,只可描述一种类型. (2)数组也是描述同一类型的集合,只可描述一种类型. (3)而结构体使得C语言可以描述复杂类型,比如学生类型( 包含学生的名字.年龄.性别.电话号等信息). 结构体和数组的区别: 结构体:用来描述相同/不同数据元素类型的集合. 数组:用来描述具有相同数据元素类型的集合.

  • C语言入门篇--字符串的基本理论及应用

    目录 字符串 1.常见字符串的情况 2.'\0'的证明 3.字符串的用法 3.1 用数组 3.1.1 给数组直接赋字符串 3.1.2 以单个字符赋入数组 3.2 用指针 4.字符串可直接输出 字符串 (1)由双引号(Double Quote)引起来的一串字符称为字符串字面值(String Literal),或者简称字符串.eg:"hello world!" (2)字符串在结束时默认有 转义字符'\0',不作为内容,作为结束标志. (3)C语言无字符串类型,需借助 char*,char[

  • ES6函数和数组用法实例分析

    本文实例讲述了ES6函数和数组用法.分享给大家供大家参考,具体如下: 1.对象的函数解构 ES6为我们提供了这样的解构赋值使在前后端分离时,后端返回来JSON格式的数据,前端可以直接把这个JSON格式数据当作参数,传递到函数内部进行处理.比如: let json = { a:'es6', b:'es5' } function fun({a,b='es5'}){ console.log(a);//es6 console.log(b);//es5 } fun(json); 结果为: 2.数组的函数解

  • C语言入门篇--关键字static详解

    目录 1.修饰局部变量 1.1作用 1.2举例 (1)不加static (2)加static (3)静态局部变量的初始化只会进行一次 2.修饰全局变量 2.1作用 2.2举例 (1)不加static (2)加static 3.修饰函数 3.1作用 3.2举例 (1)不加static (2)加static 1.修饰局部变量 1.1作用 ststic修饰局部变量,会改变局部变量的生命周期,不改变作用域: 生命周期:和全局变量一样具有全局性,但在内存中的位置没有改变,还在在静态存储区中. 作用域:作用

  • C语言入门篇--注释,关键字typedef及转义字符详解

    目录 注释 1.注释意义 2.两种注释风格 2.1 C语言注释风格 2.2 C++注释风格 关键字typedef 1.注意 2.用法 语法结构 转义字符 1.转义字符及其含义 2.字面 转 特殊 3.特殊 转 字面 注释 1.注释意义 (1)代码中有不需要的代码可以直接删除,也可以注释掉. (2)有些代码比较难懂可以注释一下. 2.两种注释风格 2.1 C语言注释风格 /*xxxxxx*/ 一次可以注释一行或多行,但不能嵌套注释. eg: #include <stdio.h> int main

  • C语言入门篇--充分理解操作符

    目录 1.算术操作符 1.1除法运算 1.2取模运算 2.移位操作符 相关知识 1.移位运算是站在二进制角度移位的 2.左移右移,原始变量值不发生变化除非给原始变量赋值 3.整数移位运算不能整除时,只保留整数部分 4.C语言中的移位运算符 5.移位分为算术移左移.算术移右移和逻辑左移.逻辑右移 3.位操作符 3.1按位与& 3.2按位或 | 3.3异或 ^ 4.赋值操作符 5.单目操作符 5.1 逻辑反操作 ! 5.2 负值 - 正值 + 5.3 取地址 & 5.4 取反 ~ 5.5 前置

  • C语言入门篇--变量[定义,初始化赋值,外部声明]

    1.变量 变量即变化的量. C语言中用 常量 来表示不变的值,用 变量 表示变化的值. eg:输出26个字母 #include <stdio.h> int main() { char c = 'A';//定义一个为char类型的变量c,并对其进行初始化 for (; c <='Z'; c++) { printf("%c", c); } printf("\n"); return 0; } 2.变量的定义 int temp; int age = 21;

  • C语言入门篇--局部全局变量的作用域及生命周期

    目录 1.变量的分类 1.1 局部变量 1.2 全局变量 1.3 知识点 1.3.1 就近原则 1.3.2 访问规则 1.3.3 有效范围 2.变量的使用 3.变量的作用域和生命周期 3.1 作用域 3.1.1 局部变量的作用域 3.1.2 全局变量的作用域 3.2 生命周期 3.2.1 局部变量的生命周期 3.2.2 全局变量的生命周期 1.变量的分类 1.1 局部变量 也称临时变量,在函数.代码块内定义,一般只可在代码块内部使用的变量. 1.2 全局变量 具有全局性,放在函数外,在同一___

随机推荐