C语言深理解数组

深理解数组


1. 存放字符串的一维数组

经过这几天的学习,大家应该知道怎样在一个数组中存放一个字符串了吧,就是下面这种方式

char str[20] ="shanxi";

那定义之后如何输出呢?试想一下,既然是数组,那么就能输出其中的任何一个元素,那么就有下面两种方式,

  • 输出字符串中任何一个字符
printf("%c",str[i]);  //i是元素下标,比如i==2,输出的就是a
  • 输出整个字符串-------直接用数组名
printf("%s",str);
2. 存放字符串的二维数组
char str1[5][20]={"shanxi","henan","hebei","sichuan"};

那为什么能这么存储这样理解,二维数组是一维数组的数组,现在上面的str1就可以简单理解为有5个长度为20的的数组的数组

那么如何来输出"shanxi"这个字符串呢,因为可以理解为有5个长度为20的的数组的数组

那么是不是只要用这5个数组的其中一个数组名就可以了呢(理解为5个数组,第一个数组名是str1[0],第二个是str1[1],以此类推)

下面这种方式就输出了 ”shanxi“ 或者"henan"…

printf("%s",str1[i]); //这里i为0到4的整数

那我还有一个问题就是,我想输出"henan"中的a怎么输出呢

现在sr1[1]是不是henan这个元素的数组名,那么模仿上面一维数组的方式,就可以写成如下形式

printf("%s",str1[1][3]);
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

云风Com

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

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

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

打赏作者

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

抵扣说明:

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

余额充值