float数组初始化_C语言 第10章-数组与指针

1. 数组1.1. 初始化数组只储存单个值的变量有时也称为标量变量(scalar variable)。在声明变量前加上 const,设置成只读。持续只能检索数组值,而不能写入新值。在初始化数组时,初始化的值少于元素个数时,剩余的元素也会被初始化为 0。初始化时省略方括号内的数字,编译器会自动通过列表里的项数来确定数组的大小。index = sizeof 数组 / sizeof 数组[0]sizeo...
摘要由CSDN通过智能技术生成

1. 数组

1.1. 初始化数组

只储存单个值的变量有时也称为标量变量(scalar variable)

在声明变量前加上 const,设置成只读。持续只能检索数组值,而不能写入新值。

在初始化数组时,初始化的值少于元素个数时,剩余的元素也会被初始化为 0。

初始化时省略方括号内的数字,编译器会自动通过列表里的项数来确定数组的大小。

index = sizeof 数组 / sizeof 数组[0]

sizeof 得出整个数组大小(以字节为单位),sizeof 数组[0] 得出一个元素的大小,除得到数组的元素个数。

1.2. 指定初始化

#include <stdio.h>
#define MONTHS 12
int main(void)
{
    
    int days[MONTHS] = {
    31, 28, [4] = 31, 30, 31, [1] = 29};
    int i;

    for (i = 0; i < MONTHS; i++)
        printf("%2d %dn", i+1, days[i]);

    return 0;
}

fd8a016a3afb658774811e9b814e1d7d.png
[4] = 31,30,31,

编译器将 4,5,6 初始化了。

同时后面的初始化会覆盖前面的初始化。

days = years;                  //不允许一个数组直接赋值给另一个数组
days[size] = {
    5,3,2,8};        //除了初始化,其他时候都不能用花括号赋值

C 不检查下标是否正确。

int n = 5;

float a[n];

a 称为变长数组(variable-length array)。

2. 多维数组

#include <stdio.h>
#define MONTHS 12
#define YEARS 5
int main(void)
{
    
 const float rain[YEARS][MONTHS] = 
    {
    
        {
    4.3,1.3,4.3,3.0,2.0,1.2,0.2,0.2,0.4,0.4,3.5,6.6},
        {
    8.5,8.2,1.2,1.6,2.4,0.0,5.2,0.9,0.3,0.9,1.4,7.3},
        {
    9.1,8.5,6.7,4.3,2.1,0.8,0.2,0.2,1.1,2.3,6.1,8.4},
        {
    7.2,9.9,8.4,3.3,1.2,0.8,0.4,0.0,0.6,1.7,4.3,6.2},
        {
    7.6,5.6,3.9,2.8,2.3,0.2,0.0,0.0,0.0,1.3,2.6,5.2}
    };
 int year, month;
 float subtot, total;

 printf(" YEAR   RAINFALL  (inches)n");
 for (year = 0, total = 0; year < YEARS; year++)
    {
    
 for (month = 0, subtot = 0; month &l
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值