Δημοσιεύτηκε: 23 Μαρ 2012, 00:57
Κάποια καλύτερη λύση για το 10ο programming project της σελίδας 312;
Η παρακάτω είναι κακή, στραβή και άσχημη αλλά τουλάχιστον δουλεύει:
Η παρακάτω είναι κακή, στραβή και άσχημη αλλά τουλάχιστον δουλεύει:
- Μορφοποιημένος Κώδικας: Επιλογή όλων
-
#include <stdio.h>
#include <string.h> // strcat()
void reverse_name(char *name)
{
char *p = name, first_letter[1+1];
while (*p == ' ') p++; // skip spaces and go to first letter
first_letter[0] = *p;
while (*p != ' ') p++; // go to next space
while (*p == ' ') p++; // skip spaces and go to surname
for (; *p != ' ' && *p; p++, name++)
*name = *p;
*name = '\0';
strcat(name, ", ");
strcat(name, first_letter);
strcat(name, ".");
}
int main(void)
{
char name[80+1] = {'\0'};
gets(name);
reverse_name(name);
puts(name);
return 0;
}