1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| #include <stdio.h>
#define STR_MAX_LEN 11
#define STR_NUMBER 3
/* do not forget final %c */
char* g_STR_FORMAT[STR_NUMBER] = {"%-6s%c", "%-20s%c", "%-2s%c"};
int main (int argc, char** argv)
{
char* str;
size_t count;
char tab[][STR_NUMBER][STR_MAX_LEN] = {
{"George", "Washington", "1"},
{"John", "Adams", "2"},
{"Thomas", "Jefferson", "3"},
{"James", "Monroe", "5"},
{"Grover", "Cleveland", "2X"},
{"\0", "\0", "\0"}
};
str = tab[0][0];
count = 0;
for(;*(str) != '\0'; str+=STR_MAX_LEN) {
if (count < (STR_NUMBER - 1)) {
printf(g_STR_FORMAT[count], str, ' ');
++count;
} else {
count = 0; /* update count in first */
printf(g_STR_FORMAT[count], str, '\n');
}
}
return 0;
} |
Partager