//T19
#include
#include
#include
#include
#define MAXXX 50
int main(int argc, char* argv[])
{
int kolon,num, i=0,j=0,n,number_of_strok,k,len[MAXXX][MAXXX],kolline,kollNullinline,neNullline;
char buf[BUFSIZ], *input=malloc(BUFSIZ), *input1=malloc(BUFSIZ);
char *words[BUFSIZ],*matr[MAXXX][MAXXX];
int aa,bb;

if (argc!=2||(strpbrk(argv[1],"0123456789")==NULL)||atoi(argv[1])<0) return -1;
kolon=atoi(argv[1]);
printf("%d\n",kolon);

printf("Enter some words:\n");
if (fgets(input,BUFSIZ-1,stdin)==NULL)
{printf("Error of enter\n"); return 0;}

strcpy(input1,input);
strtok(input1," \t");
for(i=1; strtok(NULL," \t\n");i++);
num = i;
i=0;
for (i=0; i for (j=0; j { matr[i][j]=NULL; len[i][j]=0;}
if (num%2==0) kolline=num/kolon; else kolline=num/kolon+1;

if (num%kolon==0) { kollNullinline=0; neNullline=0;}
else {
kollNullinline=(kolon-num%kolon)/kolline;
neNullline=(kolon-num%kolon)%kolline;
}
i=0; j=0;
while (input1=strtok(input," \t\n"))
{
matr[i][j]=input1;
len[i][j]=strlen(input1);
if(input) input=NULL;
if (neNullline==0)
if (j==kolon-1-kollNullinline) { i+=1; j=0; }
else j+=1;
if (neNullline)
if (j==kolon-1-kollNullinline-1) { i+=1; j=0; neNullline-=1;}
else j+=1;
}
number_of_strok=i;

printf("\n\n");
for (i=0;i for (j=0;j if (len[0][j]
for (i=0; i {
for (j=0; j {
if (matr[i][j]==NULL)
{
printf("%s","- ");
for (k=0; k printf (" ");
}
else
{
printf("%s ",matr[i][j]);
aa=strlen(matr[i][j]),bb=len[0][j];

for (k=0; k printf (" ");
}
}
printf("\n");
}
}








Чтобы не видеть здесь видео-рекламу достаточно стать зарегистрированным пользователем.
Чтобы не видеть никакую рекламу на сайте, нужно стать VIP-пользователем.
Это можно сделать совершенно бесплатно. Читайте подробности тут.