C语言字符串数组输出

怎么输出字符串数组啊,求

int main()
{
    char s[3][4]={'ni','bi','sb'};
    puts(s);
    printf("%s",s);
    return 0;
}



```解答


运行结果:
iib
iib
我想要输出:
nibisb

这里涉及几个知识点:
1:c字符串的概念,字符串其实是一个首地址,按照字符去取值(assii码表),直到取到字符串终结符'\0'终止。
2:字符用单引号,字符串用双引号
3:字符串和数组的关系,字符串是首地址然后到终结符,数组是首地址,默认0初始化,char数组可以存储字符串
4:数组存储字符串的初始化,双引号
5:一维数组存储字符串,那存储多个就是多维数组,你这里就相当于字符串数组,3个字符串。 遍历输出就好

img


for(int i = 0 ; i < 3 ; i++)
        for(int k = 0 ; k < 2 ; k++)
            printf("%c",s[i][k]);
#include <stdio.h>
int main()
{
    char s[3][4]={"ni","bi","sb"};
    printf("%s%s%s",s[0],s[1],s[2]);
    return 0;
}