Estoy aprendiendo C de k & r como primer idioma, y solo quería preguntar, si pensabas que este ejercicio se estaba resolviendo de la manera correcta, soy consciente de que probablemente no sea tan completo como como, pero quería puntos de vista, por lo que sabría que estoy aprendiendo C correctamente.K & R Capítulo 1 - Solución del ejercicio 22, ¿qué opinas?
Gracias
/* Exercise 1-22. Write a program to "fold" long input lines into two or
* more shorter lines, after the last non-blank character that occurs
* before then n-th column of input. Make sure your program does something
* intelligent with very long lines, and if there are no blanks or tabs
* before the specified column.
*
* ~svr
*
* [NOTE: Unfinished, but functional in a generic capacity]
* Todo:
* Handling of spaceless lines
* Handling of lines consisting entirely of whitespace
*/
#include <stdio.h>
#define FOLD 25
#define MAX 200
#define NEWLINE '\n'
#define BLANK ' '
#define DELIM 5
#define TAB '\t'
int
main(void)
{
int line = 0,
space = 0,
newls = 0,
i = 0,
c = 0,
j = 0;
char array[MAX] = {0};
while((c = getchar()) != EOF) {
++line;
if(c == NEWLINE)
++newls;
if((FOLD - line) < DELIM) {
if(c == BLANK) {
if(newls > 0) {
c = BLANK;
newls = 0;
}
else
c = NEWLINE;
line = 0;
}
}
array[i++] = c;
}
for(line = 0; line < i; line++) {
if(array[0] == NEWLINE)
;
else
printf("%c", array[line]);
}
return 0;
}
Tal vez deberías resolver tu propia tarea a ¿Significados? –
@Phil: creo que lo hizo ... eso o el gran bloque de código fue descifrado. – Shog9
@Phil, hay un amplio precedente para las personas que hacen preguntas sobre tareas siempre que hayan hecho un esfuerzo. Y realmente no sabes que es tarea, @svr puede autoaprendizaje. Esto es ciertamente mejor que los payasos que acaban de cortar y pegar la pregunta de su tarea textualmente. – paxdiablo