代码问题求助
想输入一串字符,过滤带*号的,打印出来。这个代码很简单啊,我没看出下面写的有啥问题,为何运行结果就是不对?
#include <stdio.h>
int main()
{
char s;
int i;
char ch;
for (i = 0; (ch = getchar()) != '\n'; i++)
{
s = ch; //为字符数组循环赋值
}
if(s!='*')
{
printf("s[]=%c",s);
}
return 0;
}
#include <stdio.h>
int main()
{
char s={'\0'};
int i;
char ch;
for (i = 0; (ch = getchar()) != '\n'; i++)
{
if (ch!='*')
{
s = ch; //为字符数组循环赋值
}
else
{
// 等于*的时候 数组要前移一位
i--;
}
}
printf("s[]=%s\n",s);
return 0;
}
页:
[1]