01/10/2018, 11:55
Điền vào mảng bằng hàm rand()
mình muốn tạo một mảng dùng hàm rand và srand để tự điền các phần tử. Sau đó mình dùng các thuât toán để sắp xếp mảng vừa rồi. Nhưng mình lại không copy được cái mảng vừa tạo ra để thực hiện thuật toán. Ai biết giúp mình với. Cảm ơn.
Đây là code copy mảng của mình , chưa thực hiện sắp xếp gì cả:
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
#define MAX 20
int A[MAX];
int B[MAX];
void Input(int count);
int main (){
int count;
do{
printf("Nhap so phan tu cua mang nho hon hoac bang 20: ");
scanf("%d",&count);
}while(count>MAX);
Input(count);
for(int i=0; i<count;i++){
B[i]=A[i];
}
printf("[");
for(int i=0;i<count;i++){
printf(" %d", B[i]);
}
printf(" ]");
}
void Input(int count){
int i,j,n;
printf("Nhap gia tri cua n:");
scanf ("%d", &n);
srand((int) time(NULL));
for( i = 0 ; i < count ; i++ )
{
printf("A[%d]=%d
",i, rand() % n);
}
}
Bài liên quan
// code
mình sẽ rút kinh nghiệm. Mình định tạo mảng có vài trăm đến nghìn phần tử. Nếu tự điền thì không được nên dùng hàm rand().
Theo mình thấy cách bạn code hình như sai rồi, giá trị đâu đc lưu vào mảng đâu. Xem lại code hàm input kìa bạn chỉ hiện ra giá trị nhưng chưa lưu vào mảng. debug từng biết sẽ biết tại sao mà?