字符数组定义: char 数组名[常量表达式1] = {值1,值2,·····};
有'\0'结束表示的字符数组也称为字符串。
字符数组长度要比字符长度大1,用来存放'\0'标识
字符串处理函数:
strlen() 计算字符串长度
strcpy() 字符串拷贝
strcat() 字符串拼接
strcmp() 字符串比较
有'\0'结束表示的字符数组也称为字符串。
字符数组长度要比字符长度大1,用来存放'\0'标识
字符串处理函数:
strlen() 计算字符串长度
strcpy() 字符串拷贝
strcat() 字符串拼接
strcmp() 字符串比较
特别需要注意的是:字符串比较函数是根据对应下标字符的ASCII码值作比较(减法),如果差值为0,说明两个字符相等,接着比较下一位ASCII码值,直到遇到'\0',如果不为0就返回差值,表示两个字符。
冒泡排序:
随机产生10个[20,40]的数,并对10个数从小到大排序。
//初始化一个具有10个元素的整型数组
int sortArray[10] = {0}, temp = 0;
// 用for循环对数组中的每个元素赋值
for (inti = 0; i <10; i++) {
sortArray[i] = arc4random() % (40- 20 + 1) +20;
printf("sortArray[%d] = %d\n",i + 1,sortArray[i]);
}
for (inti = 0; i <10 - 1; i++) {
sortArray[i] = arc4random() % (40- 20 + 1) +20;
printf("sortArray[%d] = %d\n",i + 1,sortArray[i]);
}
for (inti = 0; i <10 - 1; i++) {
//10-1防止j+1下标越界
for (intj = 0; j <10 - 1 - i; j++) {
// 比较两个相邻元素的大小,第j位的元素和第j+1位的元素
if(sortArray[j] > sortArray[j + 1]){
temp = sortArray[j];
sortArray[j] = sortArray[j +1];
sortArray[j +1] = temp;
}
}
}
}
}
for (inti = 0; i <10; i++) {
printf("sortArray[%d] = %d\n",i + 1,sortArray[i]);
}