#include<stdio.h>
#define MAXLINE 1000
int remove_1(char s[]);
int getline_1(char line[], int maxline);
main()
{
char line[MAXLINE];
while((getline_1(line, MAXLINE)) > 0) //纯空白符也存在
if(remove_1(line)>0)
printf("%s", line);
return 0;
}
//有空格就直接跳出来打印 而不是在文本结尾统一打印
int getline_1(char s[], int lim) // 获得文本中的一行 存入数组s中 返回文本长度
{
int i, c;
for(i = 0; i < lim-1 && (c = getchar()) != EOF && c != '\n'; i++)
s[i] = c;
if(c == '\n'){
s[i] = c;
++i;
}
s[i] = '\0';
return i;
}
int remove_1(char s[])
{
int i;
i = 0;
while(s[i] != '\n') //找到该组的长度
i++;
i--; //去掉最后的\n
while(i >= 0 && s[i] == '\t' || s[i] == ' ')
i--;
if(i >= 0){
i++;
s[i] = '\n';
i++;
s[i] = '\0';
}
return i;
}
//若是全空格 在i--段变成-1
//若是空白字符 \t\t\n
#define MAXLINE 1000
int remove_1(char s[]);
int getline_1(char line[], int maxline);
main()
{
char line[MAXLINE];
while((getline_1(line, MAXLINE)) > 0) //纯空白符也存在
if(remove_1(line)>0)
printf("%s", line);
return 0;
}
//有空格就直接跳出来打印 而不是在文本结尾统一打印
int getline_1(char s[], int lim) // 获得文本中的一行 存入数组s中 返回文本长度
{
int i, c;
for(i = 0; i < lim-1 && (c = getchar()) != EOF && c != '\n'; i++)
s[i] = c;
if(c == '\n'){
s[i] = c;
++i;
}
s[i] = '\0';
return i;
}
int remove_1(char s[])
{
int i;
i = 0;
while(s[i] != '\n') //找到该组的长度
i++;
i--; //去掉最后的\n
while(i >= 0 && s[i] == '\t' || s[i] == ' ')
i--;
if(i >= 0){
i++;
s[i] = '\n';
i++;
s[i] = '\0';
}
return i;
}
//若是全空格 在i--段变成-1
//若是空白字符 \t\t\n