#include<stdio.h>
main()
{int i,j,row=0,colum=0,max;
int a[3][4]={{1,2,3,4},{9,8,7,6},{-10,10,5,2}};
max=a[0][0];
for(i=0;i<=2;i++)
for(j=0;j<=3;j++)
if(a<i>[j]>max)
{
max=a<i>[j];
row=i;
colum=j;
}
printf("%d,%d,%d\n",max,row,colum);
}
扩展资料:
1、printf()函数是格式化输出函数,一般用于向标准输出设备按规定格式输出信息。
格式输出,它是c语言中产生格式化输出的函数(在stdio.h中定义)。用于向终端(显示器、控制台等)输出字符。格式控制由要输出的文字和数据格式说明组成。
要输出的文字除了可以使用字母、数字、空格和一些数字符号以外,还可以使用一些转义字符表示特殊的含义。
简单点理解就是,在一段程序中你正确使用该函数,可以在该程序运行的时候输出你所需要的内容。
2、printf函数是一个标准库函数,它的函数原型在头文件“stdio.h”中。但作为一个特例,不要求在使用printf函数之前必须包含stdio.h文件。
printf()函数的调用格式为:printf("<格式化字符串>",<参量表>)。
其中格式化字符串用于指定输出格式。格式控制串可由格式字符串和非格式字符串两种组成。
#include <stdio.h>
void main()
{
int i,j,row = 0 ,colum = 0,max;
int a[3][4]={{1,2,3,4},{9,8,7,6},{-10,10,-5,2}};
max = a[0][0];
for(i=0;i<=2;i++)
for(j=0;j<=3;j++)
if(a[i][j]>max)
{
max = a[i][j];
row = i;
colum = j;
}
printf("最大值=%d\n行号= %d\n列号= %d\n",max,row,colum);
}
扩展资料:
数组使用规则:
1.可以只给部分元素赋初值。当{ }中值的个数少于元素个数时,只给前面部分元素赋值。例如:static int a[10]={0,1,2,3,4};表示只给a[0]~a[4]5个元素赋值,而后5个元素自动赋0值。
2.只能给元素逐个赋值,不能给数组整体赋值。例如给十个元素全部赋1值,只能写为:static int a
[10]={1,1,1,1,1,1,1,1,1,1};而不能写为:static int a[10]=1;请注意:在C、C#语言中是这样,但
并非在所有涉及数组的地方都这样,数据库是从1开始。
3.如不给可初始化的数组赋初值,则全部元素均为0值。
4.如给全部元素赋值,则在数组说明中, 可以不给出数组元素的个数。例如:static int a[5]=
{1,2,3,4,5};可写为:static int a[]={1,2,3,4,5};动态赋值可以在程序执行过程中,对数组作动态赋
值。这时可用循环语句配合scanf函数逐个对数组元素赋值。
参考资料:
推荐于2018-06-18 · 知道合伙人教育行家
思路:先假设二维数组的第一个数就是最大数,在依次遍历二位数组,判断其是否大于最大数,大于最大数就替换掉最大数,并修改最大数的行列号。
参考代码:
#include<stdio.h>
int main()
{
int a[5][5],max,i,j,p,q;
for(i=0;i<5;i++)
for(j=0;j<5;j++)
scanf("%d",&a[i][j]);
max=a[0][0];
p=q=0;
for(i=0;i<5;i++)
for(j=0;j<5;j++)
if(a[i][j]>max){
max=a[i][j];
p=i;
q=j;
}
printf("最大数为:%d,行号为:%d,列号:%d.\n",max,p,q);
return 0;
}
/*
运行结果:
1 5 4 7 6
4 5 8 45 12
1 4 87 56 12
11 25 84 35 47
55 88 99 66 44
最大数为:99,行号为:4,列号:2.
*/
找出二维数组中的最大值最小值及其所在行号列号
4*4的数组示例,直接输入一个4*4的数组即可获得答案
#include <stdio.h>
void main()
{
int a[4][4],i,j,max,row1,column1;
int min,row2,column2;
for (i=0;i<4;i++)
for (j=0;j<4;j++)
scanf("%d",&a[i][j]);
max=a[0][0];row1=0;column1=0;
min=a[0][0];row2=0;column2=0;
for (i=0;i<4;i++)
for (j=0;j<4;j++)
{ if (max<a[i][j])
{ max=a[i][j];
row1=i;
column1=j; }
if (min>a[i][j])
{ min=a[i][j];
row2=i;
column2=j;
}
}
printf("max=%d,row=%d,column=%d\n",max,row1+1,column1+1);
printf("min=%d,row=%d,column=%d\n",min,row2+1,column2+1);
}