数组-3[字符数组与字符串].pptVIP

  • 5
  • 0
  • 约1.69千字
  • 约 28页
  • 2017-05-03 发布于四川
  • 举报
字符数组与字符串;字符串(String)与字符数组;只能逐个对数组元素进行操作(字符数组例外);字符数组的初始化;逐个输入输出;;scanf();字符串处理函数 ;gets();字符串处理函数;字符串连接函数strcat 格式:strcat(字符数组1,字符数组2) 功能:把字符数组2连到字符数组1后面 返值:返回字符数组1的首地址 说明:?字符数组1必须足够大 ?连接前,两串均以‘\0’结束;连接后,串1的‘\0’取消, 新串最后加‘\0’;字符串拷贝函数strcpy 格式:strcpy(字符数组1,字符串2) 功能:将字符串2,拷贝到字符数组1中去 返值:返回字符数组1的首地址 说明:?字符数组1必须足够大 ?拷贝时‘\0’一同拷贝 ?不能使用赋值语句为一个字符数组赋值;字符串比较函数strcmp 格式:strcmp(字符串1,字符串2) 功能:比较两个字符串 比较规则:对两串从左向右逐个字符比较(ASCII码), 直到遇到不同字符或‘\0’为止 返值:返回int型整数,a. 若字符串1 字符串2, 返回负整数 b. 若字符串1 字符串2, 返回正整数 c. 若字符串1== 字符串2, 返回零 说明:字符串比较不能用“==”,必须用strcmp。;‘\0’作为字符串结束符的天生缺陷;例 void main( ) { char a[5]={‘H’,’e’,’l’,’l’,’o’}; printf(“%s”,a); };‘\0’作为字符串结束符的天生缺陷;例:;#include stdio.h #include string.h #define ARRA_SIZE 80 void main() { int n, num; char str[ARRA_SIZE], min[ARRA_SIZE]; printf(Please enter five names:\n); gets(str); strcpy(min, str); for (n=1; n5; n++) { gets(str); if (strcmp(str, min) 0) { strcpy(min, str); } } printf(The min is:); puts(min); };字符串长度函数strlen 格式:strlen(字符数组) 功能:计算字符串长度 返值:返回字符串实际长度,不包括‘\0’在内;字符串大、小写转换函数 格式:strlwr(字符串) 大写 小写 strupr(字符串) 小写 大写;例1: 输入一行字符,统计其中有多少个单词;当前字符=空格;程序举例;例2 有三???字符串,找出其中最大者(P167 例6.9 自学);例2 有三个字符串,找出其中最大者;课堂练习1:数组编程练习 ——餐饮服务质量调查打分 ;提示 定义数组score存放打的分数 定义数组count为计数器(count[0]不用) 计算统计结果:设置一个循环,依次检查数组元素值score[i],是1则将数组元素count[1]加1,是2则将数组元素count[2]加1,依此类推 for (i=0; iSTUDENTS; i++) { count[score[i]] ++; } 打印统计结果,设置一个循环,按count数组元素的值,打印相应个数的符号’*’;课堂练习2:编写一个程序,将两个字符串连接起来,不要用strcat函数。

文档评论(0)

1亿VIP精品文档

相关文档