c - C 程序错误(for 循环)

标签 c

void checker(int width,int height){
    int horizontal;
    int repeat;
    int i;
    int j;
    for(j=1; j<=height; j++){
        while(horizontal<=width){
            repeat = width/10;
            if(horizontal%2){
                for(i = 1; i <=repeat; i++)
                    printf("1");
            }
            else{
                for(i = 1; i <=repeat; i++)
                    printf("0");
            }
            horizontal++;
        }
        printf("\n");
    }
}

int main(){
    checker(20,10);

    return 0;
}

所以我正在通过 C 创建一个模式。从我的代码中可以看出,我几乎没有掌握 C 的窍门。当我编译和测试它时,模式不会以 0 和 1 的形式打印出来,而是它只打印\n。

我想知道为什么,我可能脑放屁了。

感谢您的宝贵时间,像我这样的新人非常感谢!

最佳答案

水平未正确初始化。现在你正在使用内存中留下的垃圾值。在尝试使用它之前给 horizo​​ntal 一个适当的值。

关于c - C 程序错误(for 循环),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35093909/

相关文章:

c - 将参数解析为数组

服务器向客户端发送消息时android native Binder 崩溃

c - 我如何在 C 中获得自午夜 UTC 以来的毫秒数?

c - 如何比较两个字符串数组的元素并仅打印不匹配的元素? C(不是 C++)

c++ - C中的编译时错误

通过引用调用、const 正确性和对引用结构的读写访问 - 未定义的行为

c - 编写伪装为TTY的程序

c - 如何将表存储到空表中

c++ - 如何使用 OpenSSL C 库将 RSA key 从二进制数据加载到 RSA 结构?

c - epoll 返回 0 个事件