代码如下
# include<stdio.h>
int main()
{
char str[20];
char *p;
int w=0;int b=0;int n=0;int o=0;int i=0;
printf(“请输入一个字符串\n”);
while((str[i]=getchar())!=”\n”)i++;
p = &str[0];
while(*p!=”\n”)
{
if(((“a”<=*p)&&(*p<=”z”))||(“A”<=*p)&&(*p<=”Z”))
++w;
else if(*p ==” “)
++b;
else if((*p>=”0″) && (*p<=”9”))
++n;
else
++o;
p++;
}
printf(“字母的数量是%d\n”, w);
printf(“空格的数量是%d\n”, b);
printf(“数字的数量是%d\n”, n);
printf(“其他字符的数量是%d\n”, o);
return 0;
}
把getchar()换成gets()或scanf()输入字符串的方法 本程序就不能运行? 萌新实在搞不懂?请教请教
# include<stdio.h>
int main()
{
char str[20];
char *p;
int w=0;int b=0;int n=0;int o=0;int i=0;
printf(“请输入一个字符串\n”);
while((str[i]=getchar())!=”\n”)i++;
p = &str[0];
while(*p!=”\n”)
{
if(((“a”<=*p)&&(*p<=”z”))||(“A”<=*p)&&(*p<=”Z”))
++w;
else if(*p ==” “)
++b;
else if((*p>=”0″) && (*p<=”9”))
++n;
else
++o;
p++;
}
printf(“字母的数量是%d\n”, w);
printf(“空格的数量是%d\n”, b);
printf(“数字的数量是%d\n”, n);
printf(“其他字符的数量是%d\n”, o);
return 0;
}
把getchar()换成gets()或scanf()输入字符串的方法 本程序就不能运行? 萌新实在搞不懂?请教请教
解决方案
5
getchar()跟gets()或scanf()一样吗?
20
这几个函数作用是不同的,参数也是不一样的,返回值代表的含义也不同
你只是单纯把getchar换成其他的怎么会行呢
你只是单纯把getchar换成其他的怎么会行呢
10
谁跟你说这几个函数是一模一样的了?
ch=getchar()等价于scanf(“%c”, &ch)
ch=getchar()等价于scanf(“%c”, &ch)