Cプログラミング言語、入力ワードのプログラム、プリントのヒストグラム(垂直方向)に書き込み、1-13を行使する

int main(){
    int c;
    int wordCount=0;//单词数量
    int wordNum=0;//每个单词的字母数量
    int addr[MAXNUM];//单词字母数量的数组
    int index=0;//数组下标
    int maxlength=0;//字母最多的一个单词的字母个数
    int level=0;//打印的第几行

    while ((c=getchar())!=EOF) {
        if(c==' ' || c=='\t' || c=='\n'){
            wordCount++;
            addr[index]=wordNum;
            wordNum=0;
            if (addr[index]>maxlength) {
                maxlength = addr[index];
            }
            ++index;
            if (c=='\n') {
                for (int i=0; i<maxlength; i++) {
                    for (int j=0; j<wordCount; j++) {
                        if (addr[j]>=maxlength-level) {
                            putchar('*');
                        }else{
                            putchar(' ');
                        }
                    }
                    level++;
                    putchar('\n');
                }
                wordCount=0;
                index=0;
                maxlength=0;
                wordNum=0;
                level=0;
            }
        }else{
            wordNum++;
        }
    }

    return 0;
}
公開された17元の記事 ウォン称賛12 ビュー10000 +

おすすめ

転載: blog.csdn.net/qq_24295537/article/details/78881364