因为字符数组读到空格就停止了,所以只输出空格前的,读入一行用gets()
#include <stdio.h>
#include <math.h>
void main()
{
char s[50];
//scanf("%s",s);
gets(s);
printf("%s",s);
}
scanf("%s",str);方式输入,遇到空格就表示输入结束了,改为如下方式:
scanf("%[^\n]",str);这样空格就可以当字符串内容了,直到回车才结束
scanf输入字符串以空格,tab等字符作为结束。所以你输入的字符串是“jgj” 要全部输入需要循环用getchar
int getline_(char s[],int lim){
int c,i;
i=0;
while((c=getchar())!=EOF&&c!='\n'&&i<lim-1)
s[i++]=c;
s[i]='\0';
return i;
}