| | c:12/q3/phan in ma tran kha hap dan! | |
| | Tác giả | Thông điệp |
---|
nbp2983 Gà con
Tổng số bài gửi : 23 Join date : 18/06/2009
| Tiêu đề: c:12/q3/phan in ma tran kha hap dan! Wed Jun 24, 2009 7:40 pm | |
| - Code:
-
#include <stdio.h> #include <conio.h> #include <stdlib.h> #include <string.h> //khai bao ham con void menu(void); void nhap(int *n, int *m); void nhap2(int n, int m, int a[], int b[]); void tron(int n, int m,int a[], int b[], int c[]); void in(int n, int m, int c[]); void main() { int n,m; int a[20],b[20],c[40]; char chon; clrscr(); do { menu(); printf("\nnhap lua chon:"); fflush(stdin); chon=getchar(); switch(chon) { case '1': nhap(&n,&m); break; case '2': nhap2(n,m,a,b); break; case '3': tron(n,m,a,b,c); break; case '4': in(n,m,c); break; case '5': exit(0); default: printf("\nlua chon sai, thuc hien lai!"); }
}while(chon!='5'); getch(); } //dinh nghia ham con void menu(void) { printf("\nmenu:"); printf("\n1. nhap hai so n,m(1<=n<m<=19)"); printf("\n2. nhap hai mang a,b"); printf("\n3. tron mang"); printf("\n4. in mang da tron"); printf("\n5. thoat."); } void nhap(int *n, int *m) { printf("\nnhap n= "); scanf("%d",n); while(*n<1||*n>18) { printf("\nnhap lai n= "); scanf("%d",n); } printf("\nnhap m= "); scanf("%d",m); while(*m<1||*m>19||*m<=*n) { printf("\nnhap lai m= "); scanf("%d",m); } } void nhap2(int n, int m,int a[], int b[]) { int i,j; printf("\nnhap mang a:\n"); for(i=0;i<n;i++) { printf("a[%d]=",i); scanf("%d",&a[i]); } printf("\nnhap mang b:\n"); for(j=0;j<m;j++) { printf("b[%d]=",j); scanf("%d",&b[j]); } } void tron(int n, int m, int a[], int b[], int c[]) { int i, j, k,t; k=n+m; for(i=0;i<n;i++) c[i]=a[i]; for(j=0;j<m;j++) c[j+n]=b[j]; for(i=0;i<k-1;i++) for(j=i+1;j<k;j++) if(c[i]>c[j]) { t=c[i]; c[i]=c[j]; c[j]=t; } } void in(int n, int m, int c[]) { int i,j; printf("ma tran:\n"); if((m+n)%n!=0) { for(i=m+n;i<((n+m)/n+1)*n;i++) c[i]=0; for(j=0;j<((n+m)/n+1)*n;j++) { printf("%d",c[j]); printf("\t"); if((j+1)%n==0) printf("\n\n"); } } else for(j=0;j<n+m;j++) { printf("%d",c[j]); printf("\t"); if((j+1)%n==0) printf("\n\n"); } }
Được sửa bởi nbp2983 ngày Wed Jun 24, 2009 10:55 pm; sửa lần 2. | |
| | | haph86 Gà mới lớn
Tổng số bài gửi : 40 Join date : 04/06/2009
| Tiêu đề: Re: c:12/q3/phan in ma tran kha hap dan! Wed Jun 24, 2009 8:00 pm | |
| - Anh Nghĩa kiểm tra lại điều kiện của n nhé, em nhập thử n = 19 thì vòng lặp nhập m sẽ không dừng. - Ở trên khai báo anh cho a[100], b[100] mà số phần tử tối đa của mỗi mảng là 20 nên sẽ còn dư bộ nhớ, mình có thể tận dụng m phần tử tiếp theo của mảng a ( hoặc n phần tử tiếp theo của b ) để lưu mảng còn lại vào mà không cần phải dùng thêm mảng c. Đó là một số cách suy nghĩ của em, anh thử tham khảo nhé | |
| | | nbp2983 Gà con
Tổng số bài gửi : 23 Join date : 18/06/2009
| Tiêu đề: Re: c:12/q3/phan in ma tran kha hap dan! Wed Jun 24, 2009 9:18 pm | |
| ghi nhan chỗ khai bao, anh quen tay khai bao 100 phan tu, anh sửa lại rùi. con chỗ n=19 van dung vi de bai cho 0<n,m<20 and n<m thi ta suy ra n<=18(nhu vay n!=19, vi n nguyen duong ma!). hihi... em xem lai nhe! | |
| | | haph86 Gà mới lớn
Tổng số bài gửi : 40 Join date : 04/06/2009
| Tiêu đề: Re: c:12/q3/phan in ma tran kha hap dan! Wed Jun 24, 2009 9:23 pm | |
| vâng, chuẩn rồi, nhưng như thế thì trong hàm nhập anh phải để *n>=19 chứ nếu để *n>19 thì nó vẫn nhận giá trị 19 mà. | |
| | |
Join date : 01/01/1970
| Tiêu đề: Re: c:12/q3/phan in ma tran kha hap dan! Wed Jun 24, 2009 9:33 pm | |
| N<M hehehe
Được sửa bởi vobovilode ngày Thu Jun 25, 2009 12:46 am; sửa lần 1. | |
| | | nbp2983 Gà con
Tổng số bài gửi : 23 Join date : 18/06/2009
| Tiêu đề: Re: c:12/q3/phan in ma tran kha hap dan! Wed Jun 24, 2009 10:59 pm | |
| anh da sua lai *n>18 rui, the la OK! | |
| | | haph86 Gà mới lớn
Tổng số bài gửi : 40 Join date : 04/06/2009
| Tiêu đề: Re: c:12/q3/phan in ma tran kha hap dan! Thu Jun 25, 2009 10:46 am | |
| à, chỗ nào sửa anh post riêng code trong mục reply ý, như thế mọi người tiện tham khảo hơn vì không phải ai cũng theo dõi từ đầu sửa như thế này code anh đúng hết rồi -> em chém vớ vẩn ở phía dưới à | |
| | | nbp2983 Gà con
Tổng số bài gửi : 23 Join date : 18/06/2009
| Tiêu đề: Re: c:12/q3/phan in ma tran kha hap dan! Thu Jun 25, 2009 12:05 pm | |
| OK! lan sau anh se sua code trong muc reply, moi nguoi co y kien gi thi cu tung len nhe. | |
| | |
Join date : 01/01/1970
| Tiêu đề: Re: c:12/q3/phan in ma tran kha hap dan! Thu Jun 25, 2009 4:27 pm | |
| | |
| | | spyware Đại Bàng Tinh
Tổng số bài gửi : 116 Join date : 04/06/2009 Age : 39 Đến từ : HN
| Tiêu đề: Re: c:12/q3/phan in ma tran kha hap dan! Sun Jul 05, 2009 10:43 am | |
| - Code:
-
void in(int n, int m, int c[]) { int i,j,add=0,h,k=0; while((m+n+add)%n!=0) add++; for(i=m+n;i<m+n+add;i++) c[i]=0; // gan cac phan tu tiep theo = 0 printf("\nThe matrix is:\n"); h=(m+n+add)/n; for(i=0;i<h;i++) {
for(j=k;j<n+k;j++) printf("%5d",c[j]); printf("\n"); k+=n; } }
- thế này có ngắn hơn chút nào không ? | |
| | | Sponsored content
| Tiêu đề: Re: c:12/q3/phan in ma tran kha hap dan! | |
| |
| | | | c:12/q3/phan in ma tran kha hap dan! | |
|
Trang 1 trong tổng số 1 trang | |
Similar topics | |
|
| Permissions in this forum: | Bạn không có quyền trả lời bài viết
| |
| |
| |