博客
关于我
2024年大数据最全C语言高级教程-C语言数组(六):变长数组_c语言变长数组,2024年最新2024大厂大数据开发知识点总结
阅读量:798 次
发布时间:2023-04-17

本文共 1445 字,大约阅读时间需要 4 分钟。

C语言高级教程:变长数组

一、本文的编译环境

本文使用Visual Studio 2019编写,以下是其主要特点:

  • Visual Studio 2019默认安装Live Share代码协作服务。
  • 提供新欢迎窗口和改进的搜索功能,性能也有显著提升。
  • Visual Studio IntelliCode AI辅助功能。
  • 更好的Python虚拟和Conda支持。
  • 包括WinForms和WPF在内的.NET Core 3.0项目支持。

二、一维数组在执行期间确定长度

如需在程序运行时确定一维数组的长度,可采用以下方式:

size_t size = 0;printf("Enter the number of elements you want to store: ");scanf("%zd", &size);float values[size];
  • 读取用户输入的元素数量,并存储在size变量中。
  • 使用size确定数组values的长度。
  • 注意:size_t是C语言中用于32位或64位整数的标准类型,%zd格式说明符用于读取size_t类型的值。

三、二维数组在执行期间确定长度

同样地,二维数组的长度也可以在执行期间确定:

size_t rows = 0;size_t columns = 0;printf("Enter the number of rows you want to store: ");scanf("%zd", &rows);printf("Enter the number of columns in a row: ");scanf("%zd", &columns);float beans[rows][columns];
  • 读取行和列的数量。
  • 使用这些值确定二维数组beans的大小。
  • 该方法适用于多维数组的任意维度确定。

四、一维变长数组实例

以下是关于一维变长数组的示例程序:

size_t nGrades = 10;printf("Enter the number of grades: ");scanf("%zd", &nGrades);int grades[nGrades];long sum = 0L;float average = 0.0f;printf("Enter the %u grades:\n", nGrades);for (size_t i = 0; i < nGrades; ++i) {    printf("%2zd > ", i + 1);    scanf("%d", &grades[i]);    sum += grades[i];}printf("The grades you entered are:\n");for (size_t i = 0; i < nGrades; ++i) {    printf("Grade[%2zd] = %3d ", i + 1, grades[i]);    if ((i + 1) % 5 == 0) {        printf("\n");    }}average = (float)sum / nGrades;printf("Average of the %zd grades entered is: %.2f\n", nGrades, average);
  • 读取输入的分数数量nGrades
  • 根据nGrades分配内存。
  • 读取并存储分数,计算平均值。
  • 输出分数列表和平均值。

转载地址:http://rxgfk.baihongyu.com/

你可能感兴趣的文章
mysql 字段合并问题(group_concat)
查看>>
mysql 字段类型类型
查看>>
MySQL 字符串截取函数,字段截取,字符串截取
查看>>
MySQL 存储引擎
查看>>
mysql 存储过程 注入_mysql 视图 事务 存储过程 SQL注入
查看>>
MySQL 存储过程参数:in、out、inout
查看>>
mysql 存储过程每隔一段时间执行一次
查看>>
mysql 存在update不存在insert
查看>>
Mysql 学习总结(86)—— Mysql 的 JSON 数据类型正确使用姿势
查看>>
Mysql 学习总结(87)—— Mysql 执行计划(Explain)再总结
查看>>
Mysql 学习总结(88)—— Mysql 官方为什么不推荐用雪花 id 和 uuid 做 MySQL 主键
查看>>
Mysql 学习总结(89)—— Mysql 库表容量统计
查看>>
mysql 实现主从复制/主从同步
查看>>
mysql 审核_审核MySQL数据库上的登录
查看>>
mysql 导入 sql 文件时 ERROR 1046 (3D000) no database selected 错误的解决
查看>>
mysql 导入导出大文件
查看>>
mysql 将null转代为0
查看>>
mysql 常用
查看>>
MySQL 常用列类型
查看>>
mysql 常用命令
查看>>