day09

day09:

一:二维数组:定义格式:数据类型 数组名称[  一维数组的个数   ][ 一维数组的元素个数    ];

       注意点: 1:如果二维数组仅定义,而没有初始化,里面的元素都是垃圾值。

2:使用二维数组进行定义的同时初始化,没有显示初始化的元素会被自动初始化为0;

3:定义二维数组时必须指定一维数组的元素个数。

二:二维数组的使用场景:走出迷宫:

             

三:走出迷宫的优化:



四:走出迷宫优化2:全局变量。



五:字符串基本概念:

1:字符串是一个以\0 结尾的字符数组。2:%s输出内容仅仅会检查是否遇到\0.      3:字符数组如果部分初始化,没有初始化的元素会被初始化为0.  \0的ASCⅡ码就是0  

4:所以当通过 字符来初始化一个字符数组如果没有把字符数组的空间填满,那么这个字符数组就是一个字符串。


六:字符串常见函数:字符串库: #include <string.h>         (看第一遍看蒙了。)

1:用来计算字符串长度的函数(不包含\0):size_t    strlen   ( const char  *str);

2:字符串拷贝的函数:①strcpy (char *dest,  const  char *src)   :把src 中内容拷贝到dest,会覆盖原来内容,会把src中的\0也 拷贝过来,没有覆盖的内容不变。(但是不显示。)如果src中长度超过dest中所能容纳的长度,会导致程序崩溃。                  ②: strncpy( char  *dest, const  char  *src , size_t  len) : len 表示要拷贝多少个字符到目标字符数组中,len 表示要拷贝的字符串 长度,不包含\0.

3:字符串拼接的函数。:①:strcat ( char  *dest,  const  char *src)    :把src中内容拼接在dest字符串后面,从前往后找,找到第一个\0的位置,开始拼接,如果src中长度超过dest所能容纳的长度会导致程序崩溃。                  ②:strncat(  char  *dest,  const  char *src , size_t  len): 计算了需要拼接的长度。 size_t  len=sizeof(dest)- strlen(dest)- 1。

4:字符串比较的函数:strcmp( const  char  *str1, const  char  *str2)  :操作:str1与str2 中 从第一个字符开始进行比较,若相等,就去判断后面的额字符是否相等,若相等则返回0;如果遇到不相等字符,就返回这两个字符的ASCⅡ码值得差。



七:字符串的练习&字符串数组:




八:输出字符串: printf (" % s\n",  str) ;

接收字符串: 1: scanf (" %s" , str) ;①scanf 不能接收空格,遇到空格就结束了。②也有可能导致数组越界程序崩溃。

 2: gets( str ); ①可以接收空格,②也会造成数组越界。

 3: fgets ( str , sizeof( str), stdin ); ①可以接收空格  ②不会造成数组越界。









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值