鱼C论坛

 找回密码
 立即注册
查看: 934|回复: 4

[已解决]for循环

[复制链接]
发表于 2020-12-8 14:03:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include "stdio.h"
void fun(int a[2][3])
{int i,j,max;
for(i=0;i<2;i++)
{ max=a[i][0];
for(j=1;j<3;j++)
if(a[i][j]>max)
max=a[i][j];            请问这个语句和下面那个a[i][[0]是什么意思呢 ?
a[i][0]=max;
}
}
int main()
  {
  int a[2][3]={1,2,3,4,5,6},i,j;
   fun(a);
   for(i=0;i<2;i++)
   for(j=0;j<3;j++)
    printf("%4d",a[i][j]);
        }
最佳答案
2020-12-8 16:00:09
本帖最后由 风过无痕1989 于 2020-12-8 16:05 编辑

你这个程序到底要干什么?若是查找数组中的最大值,则需要去掉第11行;
#include <stdio.h>      // 错误!stdio.h 是系统自带的头函数,要用尖括号,不能用引号
void fun(int a[2][3])   // 定义 fun() 函数体
{
        int i, j, max;
        for (i = 0;i < 2;i++)
        {
                max = a[i][0];            // 假设第 i 行第 0 列的元素值就是最大值
                for (j = 1;j < 3;j++)
                        if (a[i][j] > max)
                                max = a[i][j];    // 如果 a[i][j] > max,将大值赋给 max 作为新的最大值
                                a[i][0] = max;
        }
}
int main()
{
        int a[2][3] = { 1,2,3,4,5,6 }, i, j;
        fun(a);                        // 调用函数 fun
        for (i = 0;i < 2;i++)
                for (j = 0;j < 3;j++)
                        printf("%4d", a[i][j]);   // 每个元素占4个字符宽度,输出数组
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-12-8 16:00:09 | 显示全部楼层    本楼为最佳答案   
本帖最后由 风过无痕1989 于 2020-12-8 16:05 编辑

你这个程序到底要干什么?若是查找数组中的最大值,则需要去掉第11行;
#include <stdio.h>      // 错误!stdio.h 是系统自带的头函数,要用尖括号,不能用引号
void fun(int a[2][3])   // 定义 fun() 函数体
{
        int i, j, max;
        for (i = 0;i < 2;i++)
        {
                max = a[i][0];            // 假设第 i 行第 0 列的元素值就是最大值
                for (j = 1;j < 3;j++)
                        if (a[i][j] > max)
                                max = a[i][j];    // 如果 a[i][j] > max,将大值赋给 max 作为新的最大值
                                a[i][0] = max;
        }
}
int main()
{
        int a[2][3] = { 1,2,3,4,5,6 }, i, j;
        fun(a);                        // 调用函数 fun
        for (i = 0;i < 2;i++)
                for (j = 0;j < 3;j++)
                        printf("%4d", a[i][j]);   // 每个元素占4个字符宽度,输出数组
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2020-12-8 19:07:55 | 显示全部楼层
风过无痕1989 发表于 2020-12-8 16:00
你这个程序到底要干什么?若是查找数组中的最大值,则需要去掉第11行;

考试题考输出什么,那后边那个a[i][0]=max是什么意思呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-8 19:24:02 | 显示全部楼层
风过无痕1989 发表于 2020-12-8 16:00
你这个程序到底要干什么?若是查找数组中的最大值,则需要去掉第11行;

前面那个我懂,后面加了一个啊a[i][0]=max就不知道是干啥的了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-8 22:07:41 | 显示全部楼层
本帖最后由 风过无痕1989 于 2020-12-9 12:28 编辑
1447391641 发表于 2020-12-8 19:07
考试题考输出什么,那后边那个a[0]=max是什么意思呢


是将 max 的值赋给第 0 列。本例中是 a[ i ][ 0 ] = max,不是 a[ 0 ] = max
i =0 时,将最大值赋给 0 行的第一个元素,即:a[ 0 ][ 0 ] = max
i =1 时,将最大值赋给 1 行的第一个元素,即:a[ 1 ][ 0 ] = max
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-12 10:52

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表