## Nov 15, 2011

### K & R C Exercise 1-18

K and R C, Solution to Exercise 1-18:
Remove trailing blanks and tabs from each line of input, and to delete entirely blank lines. K and R C Programs Exercises provides the solution to all the exercises in the C Programming Language, second addition, by Brian W.Keringhan and Dennis M.Ritchie(Prentice Hall,1988). You can learn and solve K&R C Programs Exercise. Read more about C Programming Language .

```/***********************************************************
* You can use all the programs on  www.c-program-example.com
* for personal and learning purposes. For permissions to use the
* programs for commercial purposes,
* contact info@c-program-example.com
* To find more C programs, do visit www.c-program-example.com
* and browse!
*
*                      Happy Coding
***********************************************************/

#include "stdio.h"

#define MAXLINE 1000

int get_lines(char line[], int maxline);
int char remove(char str[]);

main()
{

char line[MAXINLINE];/* current input line */

while((get_lines(line,MAXINLINE))>0)
if(remove(line)> 0)
printf("%s", line);
return 0;

}
/*
remove trailing blanks and tabs from character string str
*/
int remove(char str[])
{
int i=0;
while(str[i] !='\n')
++i;

--i;

while(i>=0 && (str[i]==' ' || str[i]=='\t'))
--i;
if(i>=0)
{
++i;
s[i]='\n';
++i;
s[i]='\0';

}
return i;
}
/* getline: read a line into str, return length */
int get_lines(char str[], int line)
{
int c, i, j;

for(i = 0, j = 0; (c = getchar())!=EOF && c != '\n'; ++i)
{
if(i < line - 1)
{
str[j++] = c;
}
}
if(c == '\n')
{
if(i <= line - 1)
{
str[j++] = c;
}
++i;
}
str[j] = '\0';
return i;
}

```
```Read more Similar C Programs
C Basic

K and R C Programs Exercise```

You can discuss these programs on our Facebook Page. Start a discussion right now,

our page!