1. 程式人生 > 其它 >C練習--刪除每個輸入行末尾空格及製表符,並刪除完全是空的行

C練習--刪除每個輸入行末尾空格及製表符,並刪除完全是空的行

技術標籤:自學cc語言

題目:編寫一個程式,刪除每個輸入行末尾空格及製表符,並刪除完全是空的行

#include <stdio.h>

#define MAXLINE 1000

int get_line(char s[], int lim)
{
    int c, i, j;
    j = 0;
    for(i = 0; (c = getchar()) != EOF && c != '\n'; i++)
    {
        if(i < lim -2)
        {
            s[j] = c;
            ++
j; } if(c == '\n') { s[j] = c; ++j; ++i; } s[j] = '\0'; return i; } } int remove(char s) { int i = 0; //空行不計數 while(s[i] != '\n') i = i + 1; i = i - 1; while(i >= 0 && (s[i] ==
' ' || s[i] == '\t')) i = i - 1; if(i >= 0) { i = i+1; s[i] = '\n'; i = i+1; s[i] = '\0'; } return i; } int main(void) { char line[MAXLINE]; while(get_line(line,MAXLINE) > 0) if(remove(line) > 0) printf("%s"
, line); return 0; }