C语言:字符串

字符串

字符串处理函数

---------------------------------------------

  1. 字符串

       字符串的表示

              C语言里面字符串只能用字符数组来存

              字符串要求这个数组的末尾必须至少有一个\0

              char ch1[] = {'a','b','c'};           // 不是字符串

              char ch2[5] = {'h','e','l','l','o'};  // 不是字符串

              char ch2[6] = {'h','e','l','l','o'};  // {'h','e','l','l','o','\0'}  字符串

              char ch2[10] = {'h','e','l','l','o'}; // {'h','e','l','l','o','\0','\0','\0','\0','\0'}  字符串

              简化成""的形式

              char ch2[] = "hello"; // {'h','e','l','l','o','\0'}

              char ch2[10] = {'h','e','l','l','o'};

              sizeof(ch2)=___10____

               char ch3[] = "hello";

              sizeof(ch3)=____6_____

       -----------------------------------------------------------------------------------------------

2.字符串的专用格式控制符 %s     

              输入 -- 一串字符  --- %s需要字符串的某个字符地址,从给定的地址开始接收一个字符放到char型空间去,直到遇到空格 或者 回车 结束

              输出 -- 一串字符  --- %s需要字符串的某个字符地址,从给定的地址开始读一个char字符输出,读一个输出,读到\0

              char str[20];

              printf("请输入一个字符串:");

              scanf("%s",str);     //  scanf("%s",&str[0]);  

              printf("输入的字符串是:%s\n",str);

3.多个字符串

              存储一个同学的姓名

                     一个字符串  --- 一维数组既可以了  char name[20];                  

              存储一个班级同学的姓名:

                     5个字符串 --- 二维数组            char names[5][20];  

              char names[5][20] = {"lili","tom","xiaoming","xiaoli","xiaomei"};

拓展:生成随机数   库函数                   

                    

 #include <stdlib.h>

                     // 生成随机数需要种子,但是种子在电脑启动已经生成好了。

                     // 每次让运行的时候整数不一样 -- 获取时间戳   ---- 时间函数                

                     #include<stdio.h>

                     #include <stdlib.h>

                     #include <time.h>

                     // 1、库函数的头文件

                     // 2、函数声明  函数的形式决定怎么使用函数 ---使用它的功能

                     //      int rand(void);

                     //      int 返回值类型 --- 数据类型 

                     //      rand 函数名

                     //      void 无形参   --- 调用rand函数的时候不需要再()里面传入数据

                     //      函数调用  :  函数名(实参数据);

              int i;

              for(i=0;i<5;i++)

              {

                     printf("%s\n",&names[i][0]);

              }

//     void srand( unsigned seed );

                     //     返回值类型  void -- 没有返回值

                     //     srand --- 函数名

                     //     unsigned seed  --- unsigned int seed  --- 函数调用传入一个unsigned int 型的数据



                     //  每次让运行的时候整数不一样 -- 获取时间戳   ---- 时间函数

                     //  time_t time( time_t *time );

                     //  返回值类型  time_t  --- 整型数据类型的别名   unsigned int

                     //  time  --- 函数名

                     //  time_t *time  --- 数据类型 *变量名 --- 传入一个指针   --- NULL



                     int main(void)

                     {

                            int res;

                            // 获取每次运行的时间戳

                            unsigned int t = time(NULL);

                            // 刷新种子

                            srand(t);

                            // 生成随机数

                            res = rand();

                           

                            printf("%d",res);

                            return 0;

                     }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值