/* Months program */ #include <stdio.h>
void print_months1(char * []); /* (char **) */
void print_months2(char **); /* (char * []) */
void main(void) {
int i, j;
char **p;
char *q;
char *months[] = {"none", "January",
"February", "March", "April", "May",
"June", "July", "August", "September",
"October", "November", "December",
NULL};
/**** 1st ********************************/
printf("First print of months
");
for (i = 1; i <= 12; i++)
printf("%s
", months[i]);
/**** 2nd ********************************/
printf("Second print of months
");
for (i = 1; i <= 12; i++)
printf("%s
", *(months + i));
/**** 3rd ********************************/
printf("Third print of months
");
p = &months[1];
while (*p != NULL)
printf("%s
", *(p++));
/**** 4th ********************************/
printf("Fourth print of months
");
for (i = 1; i <= 12; i++) {
j = 0;
while ((months[i])[j]) /* months[i][j]*/
putchar((months[i])[j++]);
putchar('
');
}
/**** 5th ********************************/
printf("Fifth print of months
");
p = &months[1];
while (*p) {
q = *p++;
while (*q)
putchar(*q++);
putchar('
');
}
/**** 6th ********************************/
printf("Sixth print of months
");
print_months1(months);
/**** 7th ********************************/
printf("Seventh print of months
");
print_months2(months);
}
void print_months1(char *months[]) {
int i;
for (i = 1; i <= 12; i++)
printf("%s
", months[i]);
}
void print_months2(char **months) {
char **p;
p = &months[1];
while (*p)
printf("%s
", *(p++));
}
|
% cc -o months months.c
% months
First print of months
January
...
December
Second print of months
January
...
December
Third print of months
January
...
December
Fourth print of months
January
...
December
Fifth print of months
January
...
December
Sixth print of months
January
...
December
Seventh print of months
January
...
December
%
|