c 语言编程。输入二维数组a[3][5],打印其中最小值最大值,及其对应的行列位置。

作者&投稿:貂安 (若有异议请与网页底部的电邮联系)
定义二维数组int a[3][5],从键盘上输入其元素值,编程找出其中的最大值,最小值及其对应的行列位置~

#include"stdio.h"
void main()
{
int a[3][5],i,j,max,min,rowmax=0,rowmin=0,clomax=0,clomin=0;//分别为最大(小)值的行和最(小)大值的列初始化为0
printf("please input the a:
");
for(i=0;i<3;i++)
for(j=0;j<5;j++)
scanf("%d",&a[i][j]);//以空格间隔!
for(i=0;i<3;i++)
{
for(j=0;j<5;j++)
printf("%5d ",a[i][j]);
printf("
");
}//对输入的书进行排列一下四根美观,可以不要,就像礼貌用语一样,不过你本可以不用和它讲礼貌的,不过是你看的方便!
max=a[0][0];
min=a[0][0];//对最大和最小值进行初始化为第一个数
for(i=0;i<3;i++)
for(j=0;j<5;j++)
{
if(a[i][j]>max)//如果检测到的数字比我们的最大值大,就把它赋给max
{
max=a[i][j];
rowmax=i;
clomax=j;
}
if(a[i][j]<min)//同上
min=a[i][j];
rowmin=i;
clomin=j;
}
printf("最大值为max=%d
它的行是rowmax=%d
它的列是clomax=%d
",max,rowmax,clomax);
printf("最小值为min=%d
它的行是rowmin=%d
它的列是clomin=%d
",min,rowmin,clomin);
}

#include"stdio.h"
void main()
{
int a[3][5],i,j,max,min,rowmax=0,rowmin=0,clomax=0,clomin=0;//分别为最大(小)值的行和最(小)大值的列初始化为0
printf("please input the a:\
");
for(i=0;i<3;i++)
for(j=0;j<5;j++)
scanf("%d",&a[i][j]);//以空格间隔!
for(i=0;i<3;i++)
{
for(j=0;j<5;j++)


printf("%5d ",a[i][j]);
printf("\
");
}//对输入的书进行排列一下四根美观,可以不要,就像礼貌用语一样,不过你本可以不用和它讲礼貌的,不过是你看的方便!

max=a[0][0];
min=a[0][0];//对最大和最小值进行初始化为第一个数
for(i=0;i<3;i++)
for(j=0;j<5;j++)
{
if(a[i][j]>max)//如果检测到的数字比我们的最大值大,就把它赋给max
{
max=a[i][j];
rowmax=i;
clomax=j;
}
if(a[i][j]<min)//同上
min=a[i][j];
rowmin=i;
clomin=j;
}
printf("最大值为max=%d\
它的行是rowmax=%d\
它的列是clomax=%d\
",max,rowmax,clomax);
printf("最小值为min=%d\
它的行是rowmin=%d\
它的列是clomin=%d\
",min,rowmin,clomin);
}

自己看着改下
输入4×4的数组,编写程序实现:

(1)求出对角线上各元素的和;(2)求出对角线上行、列下标均为偶数的各元素的积;(3)找出对角线上其值最大的元素和它在数组中的位置

请输入16个数组元素:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
对角线元素和为:68,对角线偶数下标元素积为:11,
对角线元素中最大元素为:16,在数组中下标为:a[3][3]。
Press any key to continue

#include "stdio.h"
// 1 2 3 4
// 5 6 7 8
// 9 10 11 12
// 13 14 15 16

main()
{
int i,j,sum=0,multi=1,maxA,mPosj,mPosi,a[4][4];
//输入
printf("请输入16个数组元素:\n");
for (i=0;i<4;i++)
{
for (j=0;j<4;j++)
{
scanf("%d",&a[i][j]);
}
}
//求对角线 元素和 偶数下标元素乘积 最大数
maxA = a[0][0];
for (i=0;i<4;i++)
{
sum += a[i][i];
if (i%2==0)
{
multi *= a[i][i];
}
if (maxA<a[i][i])
{
maxA = a[i][i];
mPosj = mPosi = i;
}
}
for (i=3,j=0;i>=0,j<4;i--,j++)
{
sum+=a[i][j];
if (i%2==0 && j%2==0)
{
multi *=a[i][j];
mPosj = mPosi = i;
}
if (maxA<a[i][j])
{
maxA = a[i][j];
mPosj = j;
mPosi = i;
}
}
printf("对角线元素和为:%d,对角线偶数下标元素积为:%d,\n对角线元素中最大元素为:%d,在数组中下标为:a[%d][%d]。\n",sum,multi,maxA,mPosi,mPosj);
}

#include <stdio.h>
void PrintMaxMin(int a[3][5])
{
int max,min;
int maxIndex[2]={0,0};
int minIndex[2]={0,0};
max = min = a[0][0];
for(int i = 0; i < 3; ++i )
{
for(int j = 0; j < 5; ++j)
{
if(a[i][j] > max)
{
max = a[i][j];
maxIndex[0] = i;
maxIndex[1] = j;
}
if(a[i][j] <min )
{
min = a[i][j];
minIndex[0] = i;
minIndex[1] = j;
}
}
}
printf("最大值为:%d 位置: %d 行 %d 列\n",max,maxIndex[0],maxIndex[1]);
printf("最小值为:%d 位置: %d 行 %d 列\n",min,minIndex[0],minIndex[1]);
}
void main()
{
int a[3][5];

for(int i = 0; i < 3; ++i )
{
for(int j = 0; j < 5; ++j)
{
printf("输入第%d个元素\n",i * 5 + j + 1);
scanf("%d",&a[i][j]);
}
}
PrintMaxMin(a);
}


新泰市13467223315: C语言从键盘输入9个整数,存入二维数组a[3][3],然后编写2个函数,分别用于查找数组a的最大值和最小值. -
抄勉大活: #include <stdio.h> int findMax(int t[][3]) { int i, j, max = t[0][0]; for (i=0; i<3; i++) { for (j=0; j<3; j++) { if (max < t[i][j]) max = t[i][j]; } } return max; } int findMin(int t[][3]) { int i, j, min = t[0][0]; for (i=0; i<3; i++) { for (j=0; j<3; j++) { if (min > t[i][j]) min = t[i][j]; } } ...

新泰市13467223315: c 语言编程.输入二维数组a[3][5],打印其中最小值最大值,及其对应的行列位置. -
抄勉大活: #include <stdio.h> void PrintMaxMin(int a[3][5]) {int max,min;int maxIndex[2]={0,0};int minIndex[2]={0,0};max = min = a[0][0];for(int i = 0; i < 3; ++i ){for(int j = 0; j < 5; ++j){if(a[i][j] > max){max = a[i][j];maxIndex[0] = i;maxIndex[1] = j;}if(a[i]...

新泰市13467223315: 二维数组问题(C语言)
抄勉大活: int a[3][3]; 输入: for(int i=0;i<=2;i++) for(int j=0;j<=2;j++) scanf("%d",a[i][j]);

新泰市13467223315: 求c语言的二位数组的代码 -
抄勉大活: 二维数组的输入输出:#include int main() { int a[3][3],i,j; printf("请输入9个数:\n"); for(i=0;i { for(j=0;j { scanf("%d",&a[i][j]); } } printf("您输入的数组是:\n"); for(i=0;i { for(j=0;j { printf("%d\t",a[i][j]); } printf("\n"); } }

新泰市13467223315: C语言如何用函数输入输出二维数组 -
抄勉大活: #include <stdio.h>int a[10][10];int main() {int i , j; //input datafor( i = 0; i < 10; i++)//多少行{for(j = 0; j < 10; j++)//多少列{scanf("%d", &a[i][j]);//输入第i行j列的值}}//ouput datafor( i = 0; i < 10; i++){for(j = 0; j < 10; j++){printf("%d ",a[i][j]);}}return 0; }

新泰市13467223315: C语言编写程序,关于二维数组的 -
抄勉大活: #include<stdio.h> void main() { int i,j; int a[3][3]; printf("请逐行输入矩阵:"); for(i=0;i<3;i++) { printf("第%d行:\n",i+1); for(j=0;j<3;j++) { scanf("%d",&a[i][j]); } } for(i=0;i<3;i++) { for(j=0;j<3;j++) { if(i==1||j==1) printf("%d",a[i][j]); else printf(" "); } printf("\n"); } }

新泰市13467223315: c语言二维数组输入 -
抄勉大活: 输入格式里不要添加空格(你用了: "%d ") .改用 scanf("%d", &a[j][i]); 就可以了.输入的数据 用空格 或 换行符分隔即可.

新泰市13467223315: 急急!!!如何用c语言输入和输出一个二维数组?? -
抄勉大活: 我就简单定义一个2行3列的数组 #include void main() { int i,j,a[2][3]; printf("请输入数组数据:"); for(i=0;i

新泰市13467223315: c语言把下面的数据输入到一个二维数组中: 25 36 78 13 12 26 88 93 -
抄勉大活: #include <stdio.h> int main() {int a[5][5],i,j,t;for (i=0; i<4; i++) for (j=0; j<4; j++) scanf("%d",&a[i][j]);for (i=0; i<4; i++) printf("%d ",a[i][i]);printf("\n");for (i=0; i<4; i++) printf("%d ",a[i][3-i]);printf("\n");for (i=0; i<4; i++) {t = a[0][i];a[0][i] ...

新泰市13467223315: 用c语言编写程序,把下面的数据输入到一个二维数组中 -
抄勉大活: #include <stdio.h>int main(int argc, const char * argv[]) { int arr[4][4]={{25,36,78,13},{12,26,88,93},{75,18,22,32},{56,44,36,58}}; int i,j,temp; printf("主对角线:\n"); for(i=0;i<4;i++) printf("%d ",arr[i][i]); putchar('\n'); printf("副对角...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网