文档详情

第7章数组--C语言程序设计.ppt

发布:2018-05-12约2.92万字共76页下载文档
文本预览下载声明
(5)字符串比较函数strcmp 格式:strcmp(字符串1,字符串2) 功能:比较两个字符串 比较规则:对两串从左向右逐个字符比较(ASCII码), 直到遇到不同字符或‘\0’为止 返值:返回int型整数,a. 若字符串1 字符串2, 返回负整数 b. 若字符串1 字符串2, 返回正整数 c. 若字符串1== 字符串2, 返回零 说明:字符串比较不能用“==”,必须用strcmp 字符串比较的规则: 比较两个字符串中从左到右依次对应字符的 ASCII码值 char s[80]= IBM; int n; if(strcmp(s, COMPUTER )0) n=1; if(strcmp(s, COMPUTER )==0) n=0; if(strcmp(s, COMPUTER )0) n=-1; 运行结果: n =1 (6)字符串长度函数strlen 格式:strlen(字符数组) 功能:计算字符串长度 返值:返回字符串实际长度,不包括‘\0’在内 例 对于以下字符串,strlen(s)的值为: (1)char s[10]={‘A’,‘\0’,‘B’,‘C’,‘\0’,‘D’}; (2)char s[ ]=“\t\v\\\0will\n”; (3)char s[ ]=“\x69\082\n”; 答案:1 3 1 #include string.h main() { int m,n; char str[80]=C language; m=strlen(str); n=sizeof(str); printf(m is %d\n n is %d\n ,m,n); 程序的运行结果: m is 10 n is 80 #include string.h #include stdio.h main() { char str1[] = ”Hello!, str2[] = ”How are you?”,str[20]; int len1,len2,len3; len1=strlen(str1); len2=strlen(str2); if(strcmp(str1, str2)0) { strcpy(str,str1); strcat(str,str2); } else if (strcmp(str1, str2)0) { strcpy(str,str2); strcat(str,str1); } else strcpy(str,str1); len3=strlen(str); puts(str); printf(”Len1=%d,Len2=%d,Len3=%d\n”,len1,len2,len3); } 例 strcmp与strlen举例 How are you?Hello! Len1=6,Len2=12,Len3=18 三、二维字符数组与一组字符串 char str[4][10]={{ W, a, n, g, c, h, e, n, g,\0}, {L, i, \0}, {J, i, a, n, g, \0}, {S, u, n, \0} }; 等价于: char str[4][10]={ Wangcheng, Li, Jiang, Sun}; str[0] W a n g c h e n g \0 L i \0 J i a n g \0 S u n \0 str[1] str[2] str[3] 三、二维字符数组与一组字符串 char str[4][10]={ Wangcheng, Li,
显示全部
相似文档