c语言如何读入串头为空格的字符串 如: 123
发布网友
发布时间:2022-07-04 17:48
我来回答
共5个回答
热心网友
时间:2023-11-24 03:21
gets函数会自动去除前导空格的。
试试这段代码。
#include <stdio.h>
#define N 20
int read_line(char [],int n);
int main()
{
char str[N];
printf("请输入字符串:");
read_line(str,N);
printf("%s,",str);
system("pause");
}
int read_line( char str[], int n)
{
int ch,i=0;
while((ch=getchar())!='\n')
if(i<n)
str[i++]=ch;
str[i]='\0';
return i;
}
热心网友
时间:2023-11-24 03:22
gets(str);
1123
1123
Press any key to continue
#include "stdio.h"
main()
{
char str[10];
gets(str);
printf("%s\n",str);
}
很正常的结果啊 你怎么输出的?
热心网友
时间:2023-11-24 03:22
做一个简单的程序:
#include<stdio.h>
int main()
char c[100];{大小随便你}
int i=1;
scanf("%c",c[i]);
while(c[i]!='/n')
{
i++:
scanf("%c",c[i]);
}
}
以上是一个字符一个字符地读入,当然也可以用gets()函数
#include<stdio.h>
int main
{
char c[100];
gets(c);
}
可能会更简洁,不过有时第一种方法会对某些题目的算法有所帮助(while循环的结束条件可以根据题目来更改。)
热心网友
时间:2023-11-24 03:23
你发点代码吧,函数本身肯定没问题,不知道你怎么写的
热心网友
时间:2023-11-24 03:24
gets(str);
1123
1123
Press any key to continue
#include "stdio.h"
main()
{
char str[10];
gets(str);
printf("%s\n",str);
}