C语言程序设计:求二维数组中最大元素值及其行列号

编程题... 编程题 展开
 我来答
问明6E
高粉答主

2019-05-23 · 每个回答都超有意思的
知道答主
回答量:279
采纳率:100%
帮助的人:12.5万
展开全部

#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("<格式化字符串>",<参量表>)。

其中格式化字符串用于指定输出格式。格式控制串可由格式字符串和非格式字符串两种组成。

iiiiiiiipl
2019-05-23 · TA获得超过9921个赞
知道答主
回答量:68
采纳率:66%
帮助的人:3.7万
展开全部

#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函数逐个对数组元素赋值。

参考资料:

百度百科-数组

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
985967518
推荐于2018-06-18 · 知道合伙人教育行家
985967518
知道合伙人教育行家
采纳数:18027 获赞数:109857
14年本科毕业于河南理工大学,至今就读于河南理工大学攻读硕士学位,从事编程学习已有5年。

向TA提问 私信TA
展开全部

思路:先假设二维数组的第一个数就是最大数,在依次遍历二位数组,判断其是否大于最大数,大于最大数就替换掉最大数,并修改最大数的行列号。

参考代码:

#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.
*/
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
金鱼8884
2015-10-29 · 知道合伙人数码行家
金鱼8884
知道合伙人数码行家
采纳数:124 获赞数:14949
学生

向TA提问 私信TA
展开全部

  找出二维数组中的最大值最小值及其所在行号列号

  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);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
夏了夏了6009
2014-06-20 · TA获得超过131个赞
知道答主
回答量:142
采纳率:100%
帮助的人:63万
展开全部
#include<stdio.h> intmain() { int a[3][4],max,x,y,i,j; printf("请输入:\n"); for(i=0;i<3;i++) for(j=0;j<4;j++) scanf("%d",&a[i][j]); max= a[0][0]; for(i=0;i<3;i++) for(j=0;j<4;j++) if(max<a[i][j]){ max=a[i][j]; x=i;y=j; } printf("%d %d %d",max,x,y); }
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式