一维数组的使用

一、定义:相同数据类型的集合,一片连续的内存空间,所存放的数据类型一样。

数组的使用:

定义一个数组:

        数据类型  数组名[数组的长度]

数组名的含义

①数组名代表整个数组 sizeof(array);

int array[4];
printf("数组长度为:%d\n",siezof array);

输出结果为:12        一个int型4字节,array表示整个数组


printf("array address:%p\n",array);

输出结果为基地址(起始地址,连续内存的首地址)

②数组名代表数组的基地址(连续的内存地址的起始地址)。

int array[4];
printf("array addres:%p\n",&array);

输出结果为:整个数组的首地址

③数组名+[ 0 ]代表数组元素的地址

int array[4];
printf("array addres:%p\n",&array[0]);

输出结果为数组首元素的地址

在通个程序中,以上三种地址都一样,但是代表的意思是不同的

二、数组的赋值使用

①定义时赋值:

②定义时未赋值

三、数组的调用

char h[4]={'a','b','c','d'};        //字符数组
    char *q=h[0];
    int n[5]={1,2,3,4};
    char m[10]={"hello"}; 
    char t[10]="hello";              //字符串数组
    int p[5]={[0 ... 1]=1,[3 ...4]=0};
    int r[7]={3,2,[5]=8};
    
    printf("h的长度为:%d\n",sizeof h);
    printf("n的长度为:%d\n",sizeof n);
    printf("h的元素:%c\n",q);       //首地址
    printf("h的元素:%c\n",h[1]);    //第二个元素地址
    printf("%s\n",&m[0]);
    printf("%s\n",&m);
    printf("t:%s\n",t);
    for (int i = 0; i < 7; i++)
    {
        printf("r数组有元素:%d\n",r[i]);
    }
    for (int i = 0; i < 6; i++)
    {
        printf("n数组有元素:%d\n",n[i]);
    }
     for (int i = 0; i < 5; i++)
    {
        printf("p数组有元素:%d\n",p[i]);
    }

输出:

四、例:

例:将字符串hello转换为123456

#include <stdio.h>
int main(void)
{
    char str[10]="hello";
    printf("str:%s\n",str);
    for (int i ='1' ; i < '7'; i++)
    {
        str[i-49]=i;
    }
    printf("str:%s\n",str);
    return 0;
}

输出结果为:
str:hello
str:123456

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

biubiuboomy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值