Truyền mảng vào hàm trong C

 #include<stdio.h>
 #include<conio.h>
 #define max 100
  
 void NhapMang(int a[max],int &n);
 void XuatMang( int a[max],int n);
 int TimKiem( int a[],int n, int x);
  
 void main()
 {
     int a[max];
     int x, n, pos;
  
     printf("Nhap x : ");
     scanf("%d",&x);
     NhapMang(a, n);
     XuatMang(a, n);
     pos = TimKiem(a,n,x);
     if (pos >= 0)
         printf("Tim thay x o %d\n", pos);
     else
         printf("Ko tim ra\n");
  
  
 }
  
  
 void NhapMang(int a[max],int &n)
 {
     printf("Nhap so luong phan tu : ");
     scanf("%d",&n);
     for(int i=0;i<n;i++)
     {
         printf("Nhap a[%d] : ",i);
         scanf("%d", a + i);
     }
 }
 void XuatMang( int a[max],int n)
 {
     for(int i=0;i<n;i++)
         printf("%d ",a[i]);
     printf("\n");
 }
 int TimKiem( int a[],int n, int x)
 {
 for(int i=0;i<n;i++)
 {
     if( a[i] == x)
     {
         return i;
     }
 }
  
 return (-1);
 }

:frowning: sao nó lại báo lỗi nhỉ

c không có tham chiếu void NhapMang(int a[max],int &n);

1 Like

À nếu bạn code bằng dev C hoặc 1 vài IDE mới thì sẽ phải dùng int main chứ không dùng được void main như ngày xưa nữa nhé :slight_smile:

1 Like

Cho em hỏi

void NhapMang(int a[max],int &n); 
void XuatMang( int a[max],int n);

khác nhau như thế nào ạ

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