sai như thế nào?
ở hàm nhapmang, scanf("%d", &a[i]); thì phải
Code mình như thế này :
hàm xuatmang mình vẫn viết như những chương trình khác, mà không hiểu sao trong chương trình nó chạy sai tùm lum hết :'( mình nghĩ là nó bị gì ở hàm xuatmang vì khi chạy hàm xuatmang ngay sau hàm nhapmang nó vẫn sai :( còn mấy hàm dưới chạy đúng không thì mình chưa test được do sai ngay từ đâu nên dưới thế nào thì không biếtCode:#include <stdio.h> #include <conio.h> void nhapmang(int A[],int n) { int i; for(i=0;i<n;i++) { printf ("\n A[%d] = ",i); scanf ("%d",A[i]); } } void xuatmang(int A[],int n) { int i; for(i=0;i<n;i++) { printf ("%d ",A[i]); } } void daocho(int A[],int n) { int i,j,tg; for(i=0;i<n;i++) for(j=n-1;j>i;j--) { if((A[j]%5==0)&&(A[j]%2!=0)) { A[tg]=A[i]; A[i]=A[j]; A[j]=A[tg]; }; if((A[i]%5==0)&&(A[i]%2==0)) { A[tg]=A[i]; A[i]=A[j]; A[j]=A[tg]; }; } } void daomang(int A[],int n) { int i,j,tg; for(i=0;i<n/2;i++) for(j=n-1;j>i;j--) { A[tg]=A[i]; A[i]=A[j]; A[j]=A[tg]; } } void ganmang(int A[],int B[], int n) { int i; for(i=0;i<n;i++) B[i]=A[i]; } void main () { clrscr (); int A[100],B[100],n; printf ("Nhap n = "); scanf ("%d",&n); printf ("\n Nhap mang A gom %d phan tu: ",n); nhapmang(A,n); printf ("\n xuat mang A: "); xuatmang(A,n); ganmang(A,B,n); daocho(A,n); printf ("\n Mang A sau khi sapxep: "); xuatmang(A,n); daomang(B,n); printf ("\n Mang A sau khi dao mang: "); xuatmang(B,n); getch (); }
sai như thế nào?
ở hàm nhapmang, scanf("%d", &a[i]); thì phải
Programming tutorials and source code examples
Trong nhà không vợ không con
Uống bia gặm thịt sao ngon thế này
Nhậu nhẹt không bị la rầy
Một tuần ta cứ bảy ngày " nâng ly "....
Bạn bị sai ngay từ cái chỗ nhapmang rồi T_T a[100] là char bạn lại dùng int, khai báo như mình nhé, sr vì mình làm iostream riết quen rồi nên ko dùng printf hay scanf nhé, chịu khó tí ^^
Code:#include <stdio.h> #include <conio.h> #include <iostream.h> void nhapmang(char a[100],int n) { int i; for(i=0;i<n;i++) { cout<<"Nhap phan tu thu a["<<i<<"]: "; cin>>a[i]; } } void main () { char a[100]; int n; cout<<"Nhap so luong phan tu: "; cin>>n; cout<<"Nhap mang A gom " <<n<<" phan tu\n"; nhapmang(a,n); getch (); }
Kẻ nào bắt buộc nghe ai.
Luôn luôn vẫn giữ ý sai của mình.
ai nói bạn sai ở kiểu int a[], đúng là nó sai ở phần nhập mảng nhưng mình nghĩ sai ở chỗ khác;
cái chỗ khai báo nhập mảng phải là
void Nhapmang(int a[],int& n); vì khi thực hiện thao tác nhập mảng làm thay đổi mảng ban đầu nên phải truyền tham chiếu cho n;
còn nữa, scanf("%d",& a[i]) mới đúng; mình góp ý như thế
I'll come back
C Code:
#include <stdio.h> #include <conio.h> void nhapmang(int A[],int n) { int i; for(i=0;i<n;i++) { } } void xuatmang(int A[],int n) { int i; for(i=0;i<n;i++) { } } //Đoạn daocho tớ đọc không hiểu ý bạn muốn làm gì, có lẽ nhìn lạ quá void daocho(int A[],int n) { int i,j,tg; for(i=0;i<n;i++) for(j=n-1;j>i;j--) { if((A[j]%5==0)&&(A[j]%2!=0)) { A[tg]=A[i]; A[i]=A[j]; A[j]=A[tg]; } if((A[i]%5==0)&&(A[i]%2==0)) { A[tg]=A[i]; A[i]=A[j]; A[j]=A[tg]; } } } /* void daomang(int A[],int n) { int i,j,tg; for(i=0;i<n/2;i++) for(j=n-1;j>i;j--)//cái này bạn xem kĩ lại { A[tg]=A[i]; A[i]=A[j]; A[j]=A[tg]; } }*/ void daomang(int A[],int n) { int i,tg; for(i=0;i<n/2;i++) { A[tg]=A[i]; A[i]=A[n-i-1]; A[n-i-1]=A[tg]; } } void ganmang(int A[],int B[], int n) { int i; for(i=0;i<n;i++) B[i]=A[i]; } void main () { clrscr (); int A[100],B[100],n; nhapmang(A,n); xuatmang(A,n); ganmang(A,B,n); daocho(A,n); xuatmang(A,n); daomang(B,n); xuatmang(B,n); getch (); }
Ai bất tài, tôi nhìn hoài chẳng thấy,
Đi khắp phòng tôi lấy 1 tấm gương,
Khẽ đặt lên một góc phía bức tường,
Nhìn vào đó, tôi tận tường kẻ đó.
Cái daocho là mình xếp các phần tử lẻ và chia hết cho 5 lên đầu mảng và các phần tử chẵn và chia hết cho 5 xuống cuối mảng, có lẽ do thuật toán chưa tối ưu lắm nên bạn nhìn khó hiểu, mà cũng có thể do mình đặt tên mảng khó hiểu nữa, hihi ^^!
Àh, Thank bạn lun cái daomang nha, mình bị sai chỗ nok mà chưa phát hiện ra, hehe
@laksjd8979343: cái int a[] thì vì sao sai thế bạn ???
@stupid_genius: bạn ấy nhập n trong hàm main nên không cần phải truyền tham chiếu đâu bạn à
Programming tutorials and source code examples
Trong nhà không vợ không con
Uống bia gặm thịt sao ngon thế này
Nhậu nhẹt không bị la rầy
Một tuần ta cứ bảy ngày " nâng ly "....
ừ mình không đọc kĩ, thanks
I'll come back
Cái đó mình sai tại mình đó giờ ko quen kiểu code này, chỉ code theo kiểu mình ghi ở trên thôi. Dùng "iostream.h" tiện lợi hơn, đỡ rắc rối hơn và dễ dàng hơn. Vì mình chưa dùng int a[] bao giờ nên phần này mình phát biểu sai, chủ pic bỏ qua nhé. Và bài code của mình cũng đã giải quyết vấn đền cho chủ pic rồi đấy, ko chịu đọc... này nọ @@
Đã được chỉnh sửa lần cuối bởi laksjd8979343 : 09-08-2011 lúc 07:17 PM.
Kẻ nào bắt buộc nghe ai.
Luôn luôn vẫn giữ ý sai của mình.