gpt4 book ai didi

c - 1.14 任务在 Kernighan,Ritchie "Programming with C"书中

转载 作者:太空宇宙 更新时间:2023-11-04 08:46:57 27 4
gpt4 key购买 nike

我正在执行“The C Programming Language”一书中的任务 1.14,但不知道我的代码出了什么问题,尤其是在打印图表时。

#include <stdio.h>

#define MAX 300

int main(void) {
int c,n,k,i,g,p,f;
int mas[MAX];

for(i = 0; i < MAX; i++) //array for the string's length
mas[i] = 0;

i = 0;
n = k = f = 0;

//getting strings to print

while((c = getchar()) != EOF) {
n++; //counter for each string in array
if(c == '\n'){
mas[i] = n;
i++;
if(n > k){ //the highest number to print
k = n;
}
n = 0;
}
}

//printing diagrams. I'm trying to do this:
/*
|
k |
|
|
|
|_____________________
i
*/

for(; k > 0; k--){ //diagram's height
for(g = 0; g < i; g++){ //diagram's length
if(mas[g] = k){ //if an array have an appropriate height to print
printf("%c", "#");
} else
putchar(' ');
}
putchar('\n');
}
return 0;
}

您可以在 ideone.com 中获取它 — http://ideone.com/1RZ1zU .

最佳答案

if(mas[g] = k){

你可能是说

if(mas[g] == k){

这也是错误的:

printf("%c", "#");

%c 需要一个字符,而不是一个字符串:

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

关于c - 1.14 任务在 Kernighan,Ritchie "Programming with C"书中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21365852/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com