Nhờ xem code kiểm tra 2 mảng giống nhau

Mọi người xem sai chỗ nào mọi người ơi

#include <stdio.h>
#include <stdlib.h>
#define SIZE 100000
int main(int argc, char *argv[])
{
  int a[SIZE];
  int b[SIZE];
  int n;
  int sum=0;
  int temp;
  int ahihi;
  int e;
  int d;
  int j;
  printf("");
  scanf("%d",&n); 
  int i;
  for(i=0;i<n;i++){
        printf("",i);
        scanf("%d",&a[i]);
        }
  for(i=0;i<n-1;i=i+1){
        for(j=i+1;j<n;j=j+1){
           if (a[i]>a[j]){
			temp=a[i];
			a[i]=a[j];
			a[j]=temp;
            }
        }
}
  for(d=0;d<n;d++){
        printf("",d);
        scanf("%d",&b[d]);
        }
  for(d=0;d<n-1;d++){
        for(e=d+1;e<n;e++){
           if (b[d]>b[e]){
			ahihi=b[d];
			b[d]=b[e];
			b[e]=ahihi;
            }
        }
}
  		if(a[i]==b[d])
  			printf("YES\n");
	  else
	  	printf("NO\n");
  system("PAUSE");	
  return 0;
}

em mới là newbie

Thay vì vừa sắp xếp vừa so sánh, bạn thử làm riêng bước so sánh đi?

3 Likes

Có hàm memcmp sao lại khổ thế kia.

3 Likes

Biết là vậy nhưng làm thế nào hả bạn

Hơn nữa hàm memcmp chỉ dùng trong trong xâu thôi đúng không

Ở đoạn:
if(a[i]==b[d]) printf("YES\n"); else printf("NO\n");

Bạn chỉ kiểm tra một phần tử chứ có kiểm tra cả mảng đâu.

3 Likes

Nó so sánh 2 đoạn dữ liệu.
Xâu hay mảng cũng phải lưu là một đoạn dữ liệu nên chơi tất.

3 Likes

2 lệnh này làm sao chạy đc bạn?

1 Like

bạn làm nhiều chỗ thấy thừa quá

1 Like

Quả tên biến bất tử quá

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