关于C语言(请告诉我这题的解题思路过程,详细的语句的解释,真的非常感谢)
输入一个2*3的二维数组,找出最大值以及它的行下标和列下标,并输出该结果。运行示例:Enterarray(2*3):3210-96-1max=a[0][2]=103210...
输入一个2*3的二维数组,找出最大值以及它的行下标和列下标,并输出该结果。
运行示例:
Enter array(2*3):3 2 10 -9 6 -1
max=a[0][2]=10
3 2 10
-9 6 -1
#include <stdio.h>
main()
{int col,row,i,j;
int a[2][3];
printf("Enter array(2*3):");
for(i=0;i<2;i++)
for(j=0;j<3;j++)
scanf("%d", (9) );
(10) ;
for(i=0;i<2;i++)
for(j=0;j<3;j++)
if(a[i][j]>a[row][col])
{ (11)
}
printf("max=a[%d][%d]=%d\n",row,col,a[row][col]);
for(i=0;i<2;i++)
{ for(j=0;j<3;j++)
printf("%4d",a[i][j]);
(12)
}
【供选择的答案】
(9)A、&a[i][j] B、&a[j][i]
C、a[i][j] D、a[j][i] 答案:A
(10) A、row=col=2; B、row=col=0;
C、a[row][col]=0; D、a[row][col]=-1; 答案:B
(11) A、row=j;col=i; B、a[row][col]=a[i][j];
C、row=i;col=j; D、a[row][col]=a[j][i]; 答案:C
(12) A、printf(“\n”)}; B、}printf(“\n”);
C、; D、printf(“\n”);} 答案:D 展开
运行示例:
Enter array(2*3):3 2 10 -9 6 -1
max=a[0][2]=10
3 2 10
-9 6 -1
#include <stdio.h>
main()
{int col,row,i,j;
int a[2][3];
printf("Enter array(2*3):");
for(i=0;i<2;i++)
for(j=0;j<3;j++)
scanf("%d", (9) );
(10) ;
for(i=0;i<2;i++)
for(j=0;j<3;j++)
if(a[i][j]>a[row][col])
{ (11)
}
printf("max=a[%d][%d]=%d\n",row,col,a[row][col]);
for(i=0;i<2;i++)
{ for(j=0;j<3;j++)
printf("%4d",a[i][j]);
(12)
}
【供选择的答案】
(9)A、&a[i][j] B、&a[j][i]
C、a[i][j] D、a[j][i] 答案:A
(10) A、row=col=2; B、row=col=0;
C、a[row][col]=0; D、a[row][col]=-1; 答案:B
(11) A、row=j;col=i; B、a[row][col]=a[i][j];
C、row=i;col=j; D、a[row][col]=a[j][i]; 答案:C
(12) A、printf(“\n”)}; B、}printf(“\n”);
C、; D、printf(“\n”);} 答案:D 展开
2010-04-15
展开全部
1.一个双循环语句对二维数组赋值,从i=0开始,就是00,01,02,10,11,12
对应赋值,而且对int赋值是要加上&的,char赋值不用,所以选A
2.这里把row=col=0;把a[0][0]视为最大的数字,然后后面的语句逐一与a[0][0]
比较。如果比a[0][0]大就把大的那个数的行列数字赋值给col,row
3.这里在2那里讲过了,就是赋值问题
4.这里输出一个回车,但是因为for前面有个{,所以后面要加一个},因为后面还有一个}是主函数的。
够详细了吧~~给我分数啊~!~~
对应赋值,而且对int赋值是要加上&的,char赋值不用,所以选A
2.这里把row=col=0;把a[0][0]视为最大的数字,然后后面的语句逐一与a[0][0]
比较。如果比a[0][0]大就把大的那个数的行列数字赋值给col,row
3.这里在2那里讲过了,就是赋值问题
4.这里输出一个回车,但是因为for前面有个{,所以后面要加一个},因为后面还有一个}是主函数的。
够详细了吧~~给我分数啊~!~~
展开全部
#include <stdio.h>
main()
{
int col,row,i,j;
int a[2][3];
printf("Enter array(2*3):");
for(i=0;i<2;i++) /*这里一行一行的输入元素 */
for(j=0;j<3;j++)/*每行的从左到右就是按每行的列下标*/
scanf("%d",&a[i][j]);/*(9)输入时要给出地址
,不是变量,这里“&”是用来取变量a[i][j]的地址*/
row=row=0;/*(10)a[row][col]用来指示最大的数组元素
这里假设a[0][0]是最大的数组元素,然后
用其他元素来和他比*/
for(i=0;i<2;i++)
for(j=0;j<3;j++)
if(a[i][j]>a[row][col])
{
row=i;/*(11)如果a[i][j]比a[row][col]大 */
col=j;/* 就把row和col换成a[i][j]的i和j*/
}
printf("max=a[%d][%d]=%d\n",row,col,a[row][col]);
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
printf("%4d",a[i][j]);
printf("\n");/*(12)这里换行 */
} /*这里漏掉了 for循环的右括弧*/
/*其实这里考察的是for循环的右括弧和最后一个";"之间的关系*/
}
main()
{
int col,row,i,j;
int a[2][3];
printf("Enter array(2*3):");
for(i=0;i<2;i++) /*这里一行一行的输入元素 */
for(j=0;j<3;j++)/*每行的从左到右就是按每行的列下标*/
scanf("%d",&a[i][j]);/*(9)输入时要给出地址
,不是变量,这里“&”是用来取变量a[i][j]的地址*/
row=row=0;/*(10)a[row][col]用来指示最大的数组元素
这里假设a[0][0]是最大的数组元素,然后
用其他元素来和他比*/
for(i=0;i<2;i++)
for(j=0;j<3;j++)
if(a[i][j]>a[row][col])
{
row=i;/*(11)如果a[i][j]比a[row][col]大 */
col=j;/* 就把row和col换成a[i][j]的i和j*/
}
printf("max=a[%d][%d]=%d\n",row,col,a[row][col]);
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
printf("%4d",a[i][j]);
printf("\n");/*(12)这里换行 */
} /*这里漏掉了 for循环的右括弧*/
/*其实这里考察的是for循环的右括弧和最后一个";"之间的关系*/
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询