c语言计数器有关问题
c语言计数器问题
开始用指针判断输入的字符串中有没有某个字母,这个用“if语句”实现了;
后来想在这基础上对某个字母进行计数,一直有问题
main()
{
int i,s=0;
char st[20],*ps;
printf("input a string:\n");
ps=st;
scanf("%s",ps);
{
for(i=0;ps[i]!='\0';i++)
s++;
}
if(s=0) printf("There is no 'k'.");
else if(s=1) printf("There is a 'k'.");
else printf("There are %d 'k's.",s);
}
不管字符串是什么都运行“s=1”的条件。
求指点~~~
------解决方案--------------------
开始用指针判断输入的字符串中有没有某个字母,这个用“if语句”实现了;
后来想在这基础上对某个字母进行计数,一直有问题
main()
{
int i,s=0;
char st[20],*ps;
printf("input a string:\n");
ps=st;
scanf("%s",ps);
{
for(i=0;ps[i]!='\0';i++)
s++;
}
if(s=0) printf("There is no 'k'.");
else if(s=1) printf("There is a 'k'.");
else printf("There are %d 'k's.",s);
}
不管字符串是什么都运行“s=1”的条件。
求指点~~~
------解决方案--------------------
- C/C++ code
if(s==0) printf("There is no 'k'."); else if(s==1) printf("There is a 'k'."); else printf("There are %d 'k's.",s);