当前位置: 首页 > news >正文

程序设计|C语言教学——C语言基础3:函数、数组、指针

目录

一、函数

1. 函数的声明与定义

2. 函数的调用

二、数组

1. 一维数组

2. 二维数组

三、指针


一、函数

函数是一段具有特定功能的代码块,可以被多次调用,提高代码的复用性和可读性。

1. 函数的声明与定义

函数的声明格式:返回值类型 函数名(参数类型1 参数名1, 参数类型2 参数名2, ...);

函数的定义格式:

返回值类型 函数名(参数类型1 参数名1, 参数类型2 参数名2, ...) {

        // 函数体

        return 返回值;

}

2. 函数的调用

调用函数时,只需写出函数名和实际参数即可。

例:

#include <stdio.h>// 函数声明
int add(int a, int b);// 函数定义
int add(int a, int b) {return a + b;
}int main() {int x = 3, y = 5;int sum = add(x, y);  // 调用add函数printf("sum = %d\n", sum);return 0;
}

二、数组

数组是一组相同类型数据的集合,数组中的元素按顺序存储在内存中。

1. 一维数组

一维数组的声明格式:数据类型 数组名[数组长度];

#include <stdio.h>int main() {int numbers[5] = {1, 2, 3, 4, 5};  // 声明并初始化一个int类型的一维数组for (int i = 0; i < 5; i++) {printf("%d ", numbers[i]);  // 通过下标访问数组元素,下标从0开始}return 0;
}
2. 二维数组

二维数组可以看作是由多个一维数组组成的,声明格式:数据类型 数组名[行数][列数];

#include <stdio.h>int main() {int matrix[2][3] = {{1, 2, 3}, {4, 5, 6}};  // 声明并初始化一个二维数组for (int i = 0; i < 2; i++) {for (int j = 0; j < 3; j++) {printf("%d ", matrix[i][j]);}printf("\n");}return 0;
}

三、指针

指针是一个变量,用于存储另一个变量的地址。通过指针可以间接访问和修改该变量的值。

#include <stdio.h>int main() {int a = 10;int *p;  // 声明一个int类型的指针变量pp = &a;  // 将变量a的地址赋给指针p,&是取地址运算符printf("a的值:%d\n", a);printf("a的地址:%p\n", &a);printf("指针p存储的地址:%p\n", p);printf("通过指针p访问a的值:%d\n", *p);  // *是解引用运算符,用于访问指针指向的变量的值*p = 20;  // 通过指针修改a的值printf("修改后a的值:%d\n", a);return 0;
}

http://www.dtcms.com/a/334865.html

相关文章:

  • Python虚拟环境与包管理工具(uv、Conda)
  • 一汽红旗7月销量37324辆 同比增长21.1%
  • B站 韩顺平 笔记 (Day 20)
  • P2169 正则表达式
  • 如何运用好DeepSeek为自己服务:智能增强的范式革命 1.1 认知增强的三次浪潮
  • 项目管理进阶——解读大型IT系统集成项目实施要点培训【附全文阅读】
  • GLM-4-Flash:智谱AI推出的首个免费API服务,支持128K上下文
  • 制作 Windows 11 启动U盘
  • Redis缓存
  • Win11和Win10共享打印机提示709用添加Windows凭据来解决的小方法
  • select、poll 和 epoll
  • Python入门第5课:如何定义和使用函数,提升代码复用性
  • Jenkins Pipeline中参数化构建
  • 【wmi异常】关于taskkill命令提示“错误:找不到” 以及无法正常获取设备机器码的处理办法
  • 读书是一场最低成本的高级成长
  • 嵌入式硬件篇---运算放大器
  • OpenCV 图像处理基础操作指南(二)
  • NetBIOS 设置
  • MySQL的索引优化与查询优化:
  • AI搜索引擎下的内容优化新范式:GEO的关键技术解析
  • 12V电压控制小板
  • EXTI配置流程
  • Day15 Docker
  • 软件I2C实现(2):I2C协议实现
  • 小迪安全v2023学习笔记(六十三讲)—— JS加密断点调试
  • Linux-Vim编辑器最简美化配置
  • CSS 核心知识点全解析:从基础到实战应用
  • 【每日一题】Day 4
  • 解决 Microsoft Edge 显示“由你的组织管理”问题
  • 17.4 合并购物车