插入排序:(在有序的数列中)找一个适合的位置,插入进行升序或降序排列
变长数组:
int n = 10;
scanf(“%d”,&n);
int a[n];//不能初始化
查找:
二分查找 (折半查找)
前提:
数据必须有序
思想:
1 ~ 10
5
3
2
一维字符型数组:
字符数据:
unsigned char s[10];
unsigned char s[10] = {'h','e','l','l','o'};//数组考虑
最主要:“hello” 想处理一串数据,字符串数据
eg char s[10]="hello";
“hello” --> unsigned char s[10] = {'h','e','l','l','o','\0'};
'\0' 对字符串来说,为结束标志
s[i] = gets();
char s[10]; gets(s);
注意:
1.字符串--更关注的是字符串整体,不是单个字符
2.字符串的结束标志 比较重要,表示字符串结束
3.处理字符串时,常常使用结束标志作为判断
int puts(const char*s);
puts(s);
功能:输出字符串
参数:@s 字符串所在空间的首地址
返回值: int 成功>0
失败-1
特点 :输出时,自动换行
char *gets(char *s);
gets(s);
功能:输入字符串
参数:@s 存放字符串的一块空间
返回值:表示的是 存储在字符串那块空间的首地址
eg:
char s[10];
// h e l l o '\0' x x x x
puts(s); //hello
puts(s); //hello *
"hello" //字符串长度
//指的是 '\0' 前面有效字符的 个数
// h e l l o'\0 ' //5就是字符串的长度
C语言中不能整体赋值 ---别的一些语言中可以
char *strcpy(char *dest, const char *src);
strcpy(s1,s2);
功能:
实现字符串拷贝
参数:
@dest 目标字符串
@src 源字符串
返回值:
成功 返回的是 dest地址
失败 NULL
char*strcat(char*dest,const char*str);
strcat(s1,s2);
功能:字符串拼接
参数:@dest目标字符串
@str源字符串