您的位置:首页 > 其它

练习1-13 编写一个程序,打印输入中单词长度的垂直方向的直方图(垂直图)

2017-11-27 12:13 906 查看
#include <stdio.h>

#define MAXLIEN 50

#define MAXROW  50

static char line[MAXROW][MAXLIEN];

int main(void)

{

   int i,j,k,z;

   int c,row,lines;

   row = MAXROW;

   i = j = z = 0;

   k = lines = 1;

   while((c = getchar()) != EOF && row > 0)

      if(c == '\n' || c == ' '){
    z = (k > z ? k : z);
    row--;
k = 1;
j = 0;
i++;
lines++;
continue;
 }else{
    line[i][j] = k;
k++;
    j++;
 }

   if(z > MAXROW)

      z = MAXROW;

   z--;

   for(i = z-1; 0 <= i; i--,z--){

      for(j = 0; j <= lines;j++){
    if(z == line[j][i])
       printf("%3c",'*');
    else

            printf("%3c",' ');

      }

      printf("\n");

   }

   printf(" ");

   for(i = 0; i <= lines+1; i++)

      printf("--");

   printf("------->\n");

   for(i = 0; i < lines - 1;i++)

      printf("%3d",i+1);

   printf("\n");

   return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐