Code bị lỗi [Error] ld returned 1 exit status

/*  Cho hai mảng số thực a, b. Đếm số lượng giá trị chỉ xuất hiện một
trong hai mảng (demgiatri)
*/
#include<stdio.h>
#include<math.h>
const int MAX = 100;
void NhapManga(int a[] , int n){
    int i;
    for(i = 0;i < n;i++){
        printf("Nhap gia tri a[%d] = ",i);
        scanf("%d",&a[i]);
    }
}
void NhapMangb(int b[] , int n){
    int i;
    for(i = 0;i < n;i++){
        printf("Nhap gia tri b[%d] = ",i);
        scanf("%d",&b[i]);
    }
}
void Dem(int a[] , int b[] , int n , int m){
    int i , j , count3 = 0, dem;
    
    for(i = 0;i < n;i++){
        dem = 0;
        int count1 = 0;
        for(j = 0;j < n;j++){
            if(a[i] == a[j]){
                if(i <= j){
                    dem++;
                }
                else{
                    break;
                }
            }
        }
        if(dem != 0){
            for(j = 0;j < m;j++){
                if(a[i] == b[j]){
                    count1++;
                }
            }
            if(count1 == 0){
                count3++;
                printf("\nGia tri %d chi xuat hien o mang a",a[i]);
            }
        }
    }
    for(j = 0;j < m;j++){
        dem = 0;
        int count2 = 0;
        for(i = 0;i < m;i++){
            if(b[j] == b[i]){
                if(j <= i){
                    dem++;
                }
                else{
                    break;
                }
            }
        }
        if(dem != 0){
            for(i = 0;i < n;i++){
                if(b[j] == a[i]){
                    count2++;
                }
            }
            if(count2 == 0){
                count3++;
                printf("\nGia tri %d chi xuat hien o mang b",b[j]);
            }
        }
    }
    printf("\nSo cac gia tri chi xuat hien o 1 trong 2 mang : %d",count3);
}
int main(){
    int n , m;
    do{
        printf("Nhap so luong phan tu mang a : ");
        scanf("%d",&n);
    } while(n <= 0 || n >= 100);
    int a[n] ; 
    NhapManga(a,n);
    do{
        printf("Nhap so luong phan tu mang b : ");
        scanf("%d",&m);
    } while(m <= 0 || m >= 100);  
    int b[m];
    NhapMangb(b,m);
    Dem(a,b,n,m);
}

em mới học c , dùng visual studio code và gặp lỗi như thế này :

c:/mingw/bin/../lib/gcc/mingw32/6.3.0/../../../../mingw32/bin/ld.exe: cannot open output file bai234.exe: Permission denied
collect2.exe: error: ld returned 1 exit status

Em thử copy qua dev c++ chạy vẫn ok , vậy là sao ạ , mong mng giúp .

Anh check lại rồi sử dụng markdown để đăng nhé. Có thể là lỗi biên dịch nhưng do code ko đc rõ ràng nên cũng ko đọc được.
markdown
Nếu chắc code đúng thì anh nhấn tổ hợp Ctrl + Alt + Delete rồi kiểm tra xem có chương trình của anh đang chạy hay không.
Kiểm tra thêm xem lưu file chưa.
Nếu không có thì cách fix là xóa file .exe đi build lại.
Không được nữa thì build bằng cmd.
Bonus thêm cái kiểm tra xem khai báo hàm main trong VSCode chưa. Các IDE khác thì được nhưng VS Code hình như phải khai báo trong properties của project.

6 Likes

cảm ơn bạn . Hôm nay mình mở VS Code lên , build lại tự dưng lại đc , k hiểu sao nữa

Bạn vẫn chưa hiểu lý do nó bị như thế. Bạn mở lại máy thì nó biên dịch được là phải.
@nguyen2812 đã giải thích và chỉ ra từng khả năng bị như thế mà bạn lại:

:rage:

4 Likes

@sondopin Oánh “Solution” cho người ta đi pa, tánh kỳ.

1 Like

Lỗi bị permission denied, thường xuyên xảy ra với những bạn mới học C sài IDE DevC, run test thử xong không tắt console , sau đó qua chỉnh sửa gì đó nữa rồi lại run tiếp thì đương nhiên là permission denied rồi.

3 Likes

cái này cũng không trách được, hiếm có bài hướng dẫn nào nói về vụ này lắm bạn.

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?