C语言基础(四)

一、一维数组
  1、数组的定义
  格式:
    数据类型 数组名[元素个数]
  1)下标
    用来表示数组中的某一个元素    arr[1]代表数组的第二个元素
     注意:下标第一个是0,最后一个是元素个数-1
  2)数组下标越界
    超出了数组元素个数的下标,如果操作越界数据会出现程序错误
    乱码结果
    报错
 
  2.求出数组元素个数
    sizeof(数组名)/sizeof(数组元素/数组数据类型) 
 
 
  3.求出数组地址
    printf("%p\n",数组名)
    printf("%p\n",数组元素)
    数组元素+1 (sizeof(数据类型))
    数组名+1(sizeof(数组名))
 
二、二维数组:
  1.数组的定义
    格式:数据类型 数组名【行个数】【列个数】
    初始化方式:
        int  arr[2][3] = { {1,2,3},{2,3,4} };
        int  arr[][3] = { {1,2,3},{2,3,4},{3,4,5} };
        int  arr[4][3] = { 1,2,3,4,5,6,7,8,9,10 }; //arr[3][1] arr[3][2]
        int  arr[4][3] = { {1},{1} ,{1} };
        int  arr[4][3] = { 1,2,3,4 };
 
  2.求行列数
    求行数:sizeof(数组名)/sizeof(数组名[0]);
    求列数:sizeof(数组名[0])/sizeoef(数组名[0][0])
 
  3.二维数组首地址表示方式:
    printf("%p\n",数组名);
 
三、字符数组和字符串:
字符数组和字符串区别在于是否有字符串结束标志
     //字符数组
        //char arr[10] = { 'H','e','l','l','o' };
        //char arr[] = { 'H','e','\','0','o' };
        //char arr[] = "h\n\0e\nllo";
        char  arr[100];
       scanf( "%[^\n]" , arr);
       
        //%s会接收字符串结束标志【'\0'】之前的所有字符 在ASCII中就是数字0
       printf( "%s" , arr);
        //for (int i = 0; i < 10; i++)
        //{
        //     printf("%c", arr[i]);
        //}
        //printf("%d\n", sizeof(arr));
四、随机数:
  1、添加头文件 time.h  stdlib.h
  2、添加随机数种子 srand((unsigend int )time(NULL));
  3、生成随机数 rand()  % 
 
 

猜你喜欢

转载自www.cnblogs.com/Riunv/p/10678858.html
今日推荐