สวัสดีครับ พอดีผมมีปัญหา ผมไม่ทราบว่าทำไมผมทำโปรแกรมบวกค่าเมทริกซ์โดยใช้ฟังก์ชัน แล้วทีนี้มันมีสองบรรทัด บันทัดแรกบวกได้ปกติ แต่บรรทัดที่สองเป็นตัวเลขอะไรไม่รู้ครับผม มันเกิดจากอะไรหรือครับ
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้#include<stdio.h>
int i,j,row,col;
int matrixadd(int ma[][col],int mb[][col],int sum[][col]);
int printmat(int sum[][col]);
main()
{
int ma[20][20],mb[20][20],sum[20][20];
printf("Enter row :");
scanf("%d",&row);
printf("Enter column :");
scanf("%d",&col);
if(row>20||col>20)
{
printf("row or col is over 20");
}
else if(row<0||col<0)
{
printf("row or col is less than integer");
}
while(row<=20&&row>0)
{
while(col<=20&&row>0)
{
printf("*****Input Metrix A*****\n");
for(i=0;i<row;i++)
{
for(j=0;j<col;j++)
{
printf("Please input metrix A[%d][%d]:",i+1,j+1);
scanf("%d",&ma[j]);
}
}
printf("*****Metrix A*****\n");
for(i=0;i<row;i++)
{
for(j=0;j<col;j++)
{
printf("%d",ma[j]);
printf("\t");
}
printf("\n");
}
printf("*****Input Metrix B*****\n");
for(i=0;i<row;i++)
{
for(j=0;j<col;j++)
{
printf("Please input metrix B[%d][%d]:",i+1,j+1);
scanf("%d",&mb[j]);
}
}
printf("*****Metrix B*****\n");
for(i=0;i<row;i++)
{
for(j=0;j<col;j++)
{
printf("%d",mb[j]);
printf("\t");
}
printf("\n");
}
matrixadd(ma,mb,sum);
printf("*****Result*****\n");
printmat(sum);
break;
}
break;
}
}
int matrixadd(int ma[][col],int mb[][col],int sum[][col])
{
for(i=0;i<row;i++)
{
for(j=0;j<col;j++)
{
sum[j]=ma[j]+mb[j];
}
}
}
int printmat(int sum[][col])
{
for(i=0;i<row;i++)
{
for(j=0;j<col;j++)
{
printf("%d",sum[j]);
printf("\t");
}
printf("\n");
}
}
ปัญหาในการบวกเมทริกซ์โดยใช้ฟังก์ชัน
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้