繁体   English   中英

简单的C程序错误

[英]Simple C program error

我在这里找不到任何错误。 该程序的目的是处理数组元素及其和的所有可能组合。 我正在尝试编写一个程序,该程序将向我返回一个元素数组,其中每个下一个不等于任何先前的元素或任何先前的元素组合之和。 我是这样开始的,遇到了一个错误:它说程序已经停止工作...

#include <stdio.h>
int m[20];

void initm(int x[]) {
    for(int i=0; i<20; i++) {
        m[i]=i;
    }
}

void sorter(int x[]) {
    for(int i=0; i<20; i++) {
        for(int j=0; j<20; j++) {
            /* nested for loop to get all possible combinations */
            printf("%d===%d===%d", x[i], x[j], x[i]+x[j]);  
        }
    }  
}

int main() {
    initm(m[20]);
    sorter(m[20]);
    return 0;
}

m[20]读取数组末尾的int一个元素,因此

initm(m[20]);
sorter(m[20]);

应该

initm(m);
sorter(m);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM