猿问

算法dynamic connectivity,为什么每次输入数字按下回车后就报错

#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
int group[10];
bool connected(int,int);
void reunion(int,int)

int main(){
    int i,check1,check2;
    
    for(i=0;i<=9;i++){
        group[i]=rand()%10;
    }
    for(;;){
        scanf("%d %d",check1,check2);
        if(!(connected(group[check1],group[check2]))){
            reunion();    
        }
        
    }
    
}
bool connected(i,j){
    return i==j;
}
void reunion(i,j){
    group[i]=group[j];
    printf("succeed union");
}


wzmark
浏览 1952回答 1
1回答

onemoo

scanf 后面参数是要接受输入的变量的地址。所以不能直接传入变量,而是要取地址后传入:scanf("%d %d", &check1, &check2);
随时随地看视频慕课网APP
我要回答