Tboy Cá voi
Tổng số bài gửi : 178 Cảm ơn : 413 Danh vọng : 4 Join date : 03/01/2011 Age : 32 Đến từ : TPHCM
| Tiêu đề: Hoán đổi dòng, cột - (Mảng 2 chiều- Biến đổi trên mảng) Sat Feb 12, 2011 6:07 pm | |
| | Sat Feb 12, 2011 6:07 pm Hoán đổi dòng, cột - (Mảng 2 chiều- Biến đổi trên mảng) | | | - Code:
-
//HOAN DOI DONG, COT CUA MA TRAN #include <stdio.h> #include <conio.h> #define MAX 101 void NhapMT(int MT[][MAX],int Dong,int Cot); void XuatMT(int MT[][MAX],int Dong,int Cot); void Hoandoi(int &A,int &B); void Hoandoidong(int MT[][MAX],int Cot,int K1,int K2); void Hoandoicot(int MT[][MAX],int Dong,int K1,int K2); void main() { int matran[MAX][MAX],dong,cot,k1,k2; //*****************************NHAP MA TRAN************************************* printf("\tNHAP MA TRAN\n"); do { printf("\nNhap vao so dong va cot ma tran: "); scanf("%d%d",&dong,&cot); }while(dong<1||cot<1||dong>MAX-1||cot>MAX-1); NhapMT(matran,dong,cot); printf("Ma tran vua nhap:\n"); XuatMT(matran,dong,cot); //*****************************HOAN DOI DONG**************************************** printf("\n****\tHOAN DOI 2 DONG CUA MA TRAN\t****\n\n"); do { printf("Chon 2 dong can hoan doi: "); scanf("%d%d",&k1,&k2); }while(k1<1||k1>dong||k2<1||k2>dong); Hoandoidong(matran,cot,k1-1,k2-1); printf("Sau khi hoan doi\n"); XuatMT(matran,dong,cot); getch(); //*****************************HOAN DOI COT**************************************** printf("\n****\tHOAN DOI 2 COT CUA MA TRAN\t****\n\n"); do { printf("Chon 2 cot can hoan doi: "); scanf("%d%d",&k1,&k2); }while(k1<1||k1>cot||k2<1||k2>cot); Hoandoicot(matran,dong,k1-1,k2-1); printf("Sau khi hoan doi\n"); XuatMT(matran,dong,cot); getch(); } void NhapMT(int MT[][MAX],int Dong,int Cot) { for(int i=0;i<Dong;i++) for(int j=0;j<Cot;j++) { printf("A[%d][%d]= ",i+1,j+1); scanf("%d",&MT[i][j]); } } void XuatMT(int MT[][MAX],int Dong,int Cot) { for(int i=0;i<Dong;i++) { for(int j=0;j<Cot;j++) printf("%5d",MT[i][j]); printf("\n"); } } void Hoandoi(int &A,int &B) { int t=A; A=B; B=t; } void Hoandoidong(int MT[][MAX],int Cot,int K1,int K2) { for(int i=0;i<Cot;i++) Hoandoi(MT[K1][i],MT[K2][i]); } void Hoandoicot(int MT[][MAX],int Dong,int K1,int K2) { for(int i=0;i<Dong;i++) Hoandoi(MT[i][K1],MT[i][K2]); } Tboy
| | | | | |
|