嵌入式学习 Day9

一. 字符串大小的比较的

规则:
对两个字符串自左至右逐个字符相比(按ASCII 码值大小比较),直到出现不同的字符或遇到'\0' 为止。
如全部字符相同,则认为相等;

若出现不相同的字符,则以第一个不相同的字符的比较结果为准。

    
 int strcmp(const char *s1, const char *s2);
 功能:
     比较两个字符串 
 参数:
    s1 
    s2 
      表示两个字符串 
 返回值:
    >0    s1 > s2
    ==0   s1 == s2 
    <0    s1 < s2 
    
    返回值,实际上是,结束位置上字符的差值 (前面减后面,为负后面大)
    
strlen --获取字符串长度 
strcpy --复制字符串


strcat --拼接字符串 


strcmp --比较字符串大小 

练习:
    比较字符串 
    s1 > s2 
 

二. 字符串的输入 

输入字符串 
  gets ();
  scanf(); //不能输入 带空格的 字符串如hello world

三. 二维数组:

1.二维数组形式:


  类型说明符 数组名[常量表达式][常量表达式];
 eg:
 int a[3][4];          // 3行 4列     二维数组
 int a[3][4][5];                          三维数组
 int a[3][4][5][6];                      四维数组
 .....


 int a[4]; //一维数组 
             //a的数据类型为 int[4] 
            

 int[4] a[3]; //一维数组 
                 //一维数组的元素类型 是一个数组类型 
              
 int a[3][4]; //二维数组 
                 //a数据类型 int[3][4] 
总结:
1.C语言中,不存在真正的二维数组,只有一维数组  
2.二维数组本质,是一维数组的一维数组

 
2. 二维数组初始化:


int a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12};//全部初始化 
int a[3][4] = {1,2,3,4,5,6,7};                     //部分初始化 ,剩余位置补零
int a[3][4] = {{1,2,3,4},{5,6,7,8}};             //按行初始化 
int a[ ][4];                                                //二维数组语法角度 ---行数可以省略 列数不能省略 
                                                                但省略的时候,必须给值 

a[1][4]

a[2][4]


练习:
   int a[3][4];
   从键盘输入值
   要求求出,二维数组边上和   

   scanf("%d",&a[i][j]);    //int 


练习:
  转置 
   1 2 3  
   4 5 6
   7 8 9
   
   1 4 7  
   2 5 8
   3 6 9
   


   
3. 二维字符型数组:


char s[3][10]; 

char[10] s[3]; 

练习:
  输入三个字符串 


  找出最大字符串 
  strcmp(s[0],s[1]) 
  strcpy(s[0],s[1])


  
练习:
  输入3个字符串 
  排序 


总结:
1.数组概念
2.数组定义
  一维整型
  一维字符型 
  二维整型数组
  二维字符型数组  
  
3.重点
  a.二维数组本质 
  b.二维整型数组操作 ---访问具体的元素 a[i][j]
  c.二维字符型数组 
    放多个字符串 
    char s[3][10];

5.掌握 
  a.排序算法 
    选择
    冒泡
    插入 
    查找 
  b.关于字符串 的一些函数
    strlen
    strcpy 
    strcat 
    strcmp 

  • 18
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值