Mình có bài tập như sau:
+ nhập , xuất ma trận gồm n hàng và m cột ( nxm).
+ Nhập vào 1 dãy b gồm ( n phần tử)
+ Chèn dãy b vào trước cột chứa phần tử có giá trị nhỏ nhất cuối cùng của ma trận ( tính từ trên xuống, và từ trái qua phải).
+ In ra ma trận vừa chèn


-------------------------
Mình đã làm, thấy test lỗi không có gì, nhưng khi chạy thì nó chèn sai hàng, mình kiểm tra watch thì thấy biến j ở phần tìm MIN (dòng 40-50) bị tăng lên 1 giá trị mà trong khi đó mình đã cho j chạy từ 1->c. ở vd mình test cho c =3, nhưng xem ở cửa sổ watch j bị tăng lên 4. Mọi người có thể xem hộ em xem bị sai ở đâu k ạ.
VD mình test là:
hàng =2. cột 3
giá trị là
1-2-3
4-5-1


Đây là code của em.
Mã:
/*
+ nhập , xuất ma trận gồm n hàng và m cột ( nxm).
+ Nhập vào 1 dãy b gồm ( n phần tử)
+ Chèn dãy b vào trước cột chứa phần tử có giá trị nhỏ nhất cuối cùng của ma trận ( tính từ trên xuống, và từ trái qua phải).
+ In ra ma trận vừa chèn :

*/
#include<stdio.h>
#include<conio.h>
#include <stdlib.h>
int main()
{
system("cls");
//clrscr(); 										// Xoa man hinh.
												// Khai bao Bien.
int h,c,i,j,k; 									
float a[50][50],b[50],min;
//~~~~~~~~~~~~~~~~~~~~~~ Nhap du lieu tu ban phim.
printf("Nhap so hang cua ma tran:"); scanf("%d",&h);
printf("Nhap so cot cua ma tran:"); scanf("%d",&c);
for(i=1;i<=h;i++)
	for(j=1;j<=c;j++)
		{
		printf("Nhap gia tri cho a[%d][%d]:",i,j);
		scanf("%f",&a[i][j]);
		}
printf("Nhap day b:");
for(i=1;i<=h;i++) { printf("Nhap b[%d]:",i); scanf("%f",&b[i]);}
//~~~~~~~~~~~~~~~~~~~~~~~ Xuat ma tran ra man hinh
//clrscr();
printf("Ma Tran Da Nhap La. 
");
for(i=1;i<=h;i++)
{
	for(j=1;j<=c;j++) printf("%6.1f",a[i][j]);
	printf("
");
}
printf("Vecto b:
");
for(i=1;i<=h;i++) printf("%5.1f
",b[i]);
fflush(stdin);
//~~~~~~~~~~~~~~~~~~~~~~~~~ Tim Min
   min=a[1][1];

for(j=1;j<=c;j++)
	{
	for(i=1;i<=h;i++) 
		{
		if((a[i][j]<min)||(a[i][j]==min)) min=a[i][j];
		}
		}
 k=j;

//~~~~~~~~~~~~~~~~~~~~~~~~~ Xu Ly Chen B vao k

for(i=1;i<=h;i++)
	for(j=k;j+1>k;j--) a[i][j+1]=a[i][j];
for(i=1;i<=h;i++) a[i][k]=b[i];
//~~~~~~~~~~~~~~~~~~~~~~~~ Xuat ma tran da xoa
printf("Ma Tran Sua. 
");
for(i=1;i<=h;i++)
{
for(j=1;j<=c+1;j++) printf("%6.1f",a[i][j]);
printf("
");
}
getch();
}