chap08指针概要1.ppt

chap08指针概要1

* * strcmp(str1, str2) 比较 两个字符串str1和str2的大小。 规则:按字典序(ASCII码序) 如果 str1 和 str2 相等,返回 0; 如果 str1 大于 str2 ,返回一个正整数; 如果 str1 小于 str2 ,返回一个负整数; static char s1[20] = sea; 字符串比较函数strcmp strcmp(s1, Sea); strcmp(Sea, Sea ); strcmp(Sea, Sea); 正整数 负整数 0 # include “stdio.h” # include “string.h” int main(void ) { int res; char s1[20], s2[20]; gets(s1); gets(s2); res = strcmp(s1, s2); printf(“%d”, res); return 0; } strcmp() 示例 1234 5 -4 利用字符串比较函数比较字符串的大小 strcmp(str1, str2); 为什么定义这样的函数? 用strcmp()比较字符串 strcmp(str1, str2) 0 strcmp(str1, “hello”) 0 strcmp(str1, str2) == 0 str1 str2 str1 “hello” str1 == str2 比较字符串首元素的地址 比较字符串的内容 strlen(str) 计算字符串的有效长度,不包括 ‘\0’。 static char str[20]=“How are you?” strlen(“hello”) 的值是: strlen(str) 的值是: 字符串长度函数strlen 5 12 函数 功能 头文件 puts(str) 输出字符串 stdio.h gets(str) 输入字符串(回车间隔) strcpy(s1,s2) s2 == s1 strcat(s1,s2) s1 “+” s2 == s1 若 s1“==”s2, 函数值为0 strcmp(s1,s2) 若 s1 “” s2, 函数值 0 string.h 若 s1 “” s2, 函数值0 计算字符串的有效长度, strlen(str) 不包括 ‘\0’ 字符串处理函数小结 int main( ) { int i; int x, min; scanf(%d, x); min = x; for(i = 1; i 5; i++){ scanf(%d, x); if(x min) min = x; } printf(min is %d\n, min); return 0; } 例8-16 求最小字符串 #include string.h int main( ) { int i; char sx[80], smin[80]; scanf(%s, sx); strcpy(smin,sx); for(i = 1; i 5; i++){ scanf(%s, sx); if(strcmp(sx, smin)0) strcpy(smin,sx); } printf(min is %s\n, smin); return 0; } 2 8 -1 99 0 min is –1 tool key about zoo sea min is about 8.5 任意个整数求和问题 * 例8-17 先输入一个正整数n,再输入任意n个整数,计算并输出这n个整数的和。 要求使用动态内存分配方法为这n个整数分配空间。 8.5.1 程序解析 int main ( ) { int n, sum, i, *p; ? printf(Enter n: ); scanf(%d, n); if ((p =

文档评论(0)

1亿VIP精品文档

相关文档