例1:下面的程序要求用户输入密码“admin'”,如果输入正确, 则继续程序运行,否则返回。 不能写成: ① char pw[20]; if (pw=="admin") ② scanf("%s",pw); ③ if(stremp(pw,"admin'")!=0)/pw不是"admin'" ④ return; /返回 ⑤ else. /继续. 例2:if(strcmp(s1,s2)==0) 用于判断两字 符串相等 非法 注意:f(s1==s2)
例2:if ( strcmp (s1, s2)==0) { . } 用于判断两字 符串相等 非法 注意:if (s1==s2)
课堂练习(字符串比较应用)40人投票,统计3个 候选人各自得票数。 ①#include<string.h> ②int main() 算法分析: 3{char p[20],a="zhang", ①定义4个一维字符数组一候选人、 ④ b="li",c="wang"; ②每个候选人的初始票数=0 ⑤ int an=0,bn=0,cn=0,i∥票数 ⑥ for(=1;i<=40;it+)》 ③ 每一票分别与3个候选人比较 ⑦ {gets(p;/输入每张选票 -相等加1票 ⑧ if(strcmp(p,a)==0)an++; ⑨ if(strcmp(p,b)==0)bn++; ⑩ if(strcmp(p,c)==0)cn++; ① ② printf("%d %d %dIn",an,bn,cn); ③ return 0; ④
课堂练习(字符串比较应用)-40人投票,统计3个 候选人各自得票数。 算法分析: ① 定义4个一维字符数组—候选人、票 ② 每个候选人的初始票数=0 ③ 每一票分别与3个候选人比较 -相等加1票 ① #include<string.h> ② int main() ③ { char p[20],a[]="zhang" , ④ b[]="li" ,c[]="wang"; ⑤ int an=0,bn=0,cn=0,i; // 票数 ⑥ for (i=1;i<=40;i++) ⑦ { gets(p); //输入每张选票 ⑧ if(strcmp(p,a)==0) an++; ⑨ if(strcmp(p,b)==0) bn++; ⑩ if(strcmp(p,c)==0) cn++; ⑪ } ⑫ printf("%d %d %d\n" ,an,bn,cn); ⑬ return 0; ⑭ }