代码初学者,今天写了一个循环语句超多的程序,然后vs就给我报错了,不知道是什么意思,也不知道如何解决,望大家能指正,代码贴在下图中:
并附上题目:
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#pragma pack(1)
int main() {
int m, N;
int i, j, k, l, o, mul, sum;
mul = 1;
sum = 0;
printf("将生成一个N*m的二维数组A和一个m*N的二维数组B,请您按先后输入m与N的值:");
scanf_s("%d,%d", &m, &N);
int arrayA[100][100] = { 0 };
int arrayB[100][100] = { 0 };
int arrayC[100][100] = { 0 };
printf("请您一行行的输入二维数组A中元素的值:\n");
for (i = 0; i <= N - 1; i++) {
printf("第%d行:", i + 1);
for (j = 0; j <= m - 1; j++) {
scanf_s("%d", &arrayA[i][j]);
}
}
printf("请您一行行的输入二维数组B中元素的值:\n");
for (i = 0; i <= m - 1; i++) {
printf("第%d行:", i + 1);
for (j = 0; j <= N - 1; j++) {
scanf_s("%d", &arrayB[i][j]);
}
}
for (i = 0; i <= N - 1; i++) {
for (j = 0; j < m - 1; j++) {
k = j + 1;
for (; k <= m - 1; k++) {
if (arrayA[i][j] >= arrayA[i][k]) {
l = arrayA[i][k];
arrayA[i][k] = arrayA[i][j];
arrayA[i][j] = l;
}
}
}
}
for (i = 0; i <= m - 1; i++) {
for (j = 0; j < N - 1; j++) {
k = j + 1;
for (; k <= N - 1; k++) {
if (arrayB[i][j] >= arrayB[i][k]) {
l = arrayB[i][k];
arrayB[i][k] = arrayB[i][j];
arrayB[i][j] = l;
}
}
}
}
for (i = 0; i <= N - 1; i++) {
for (o = 0; 0 <= N - 1; o++) {
for (j = 0; j <= m - 1; j++) {
mul = arrayA[i][j] * arrayB[j][o];
sum += mul;
}
arrayC[i][o] = sum;
}
}
printf("下面是数组相乘后得到的二维数组C:\n");
for (i = 0; i <= N - 1; i++) {
printf("第%d行:", i);
for (j = 0; j <= N - 1; j++) {
printf("%d", arrayC[i][j]);
}
printf("\n");
}
printf("验证部分:下面是经过排序后的数组A:\n");
for (i = 0; i <= N - 1; i++) {
for (j = 0; j <= m - 1; j++) {
printf("%d", arrayA[i][j]);
}
printf("\n");
}
printf("下面是经过排序后的数组B:\n");
for (i = 0; i <= m - 1; i++) {
for (j = 0; j <= N - 1; j++) {
printf("%d", arrayB[i][j]);
}
printf("\n");
}
return 0;
}