本文目录一览:
C语言小问题,高手来
return 用来返回函数的返回值,执行完return之后函数调用也就结束了 后几行是说:如果a==1,那么函数的返回值为1,因为1!=1; 如果a != 1,那么函数的返回值是 afactorial(a-1),因为 a!=a(a-1)! 。
C语言小问题请高手不吝赐教;
主函数的返回值你给了一个int型 return() 它是一个空类型的返回值 类型不匹配 当然报错 改成void main() 正好和后面的return() 匹配上 要么 前面用 int main() 后面改成 return 0;
c语言小问题
已经修改好了,请对比查找修改之处:
#include<stdio.h>
#define M 10
#define N 10
void InputMatrix(int *p, int m, int n);
int FindMax(int *p, int m, int n, int *pRow, int *pCol);
int main()
{
int a[M][N], m, n, row, col, max;
printf("input m, n:");
scanf("%d,%d", &m, &n);
InputMatrix(*a, m, n);
max = FindMax(*a, m, n, &row, &col);
printf("max=%d, row=%d, col=%d\n", max, row, col);
getch();
return 0;
}
void InputMatrix(int *p, int m, int n)
{
int i, j;
printf("input %d*%d array:\n", m, n);
for(i = 0; i < m; i++)
{
for(j = 0; j < n; j++)
{
scanf("%d", &p[i*n + j]);
}
}
}
int FindMax(int *p, int m, int n, int *pRow, int *pCol)
{
int i, j, max = p[0];
*pRow = 0;
*pCol = 0;
for(i = 0; i < m; i++)
{
for(j = 0; j < n; j++)
{
if(p[i*n + j] > max)
{
max = p[i*n + j];
*pRow = i;
*pCol = j;
}
}
}
return max;
}