Ccoding 发表于 2017-9-29 20:58:41

从键盘上输入9个数,保存在二维数组中,按数组原来位置输出第一行和第一列的所有元素


#include <stdio.h>
void main()
{
        int i , j,a;
        for(i=;i<3;i++)
        {
                for(j=0;j<3;j++)
                {
                        printf("a[%d][%]:",i,j);
                        scanf("%d",&a); //   Q1:printf 和 scanf 这两部都需要才能实现从键盘上获取数组吗?
                }
        }
        for(i=0;i<3;i++)
        {
                for(j=0;j<3;j++)
                {
                        if(1==i || 1 == j)// Q2:这里的条件看不明白
                        {
                                printf("%-6d",a);//Q3: 为什么这里用-6d,直接%d不行吗?
                        }
                        else
                        {
                                printf("%-6d",' ');
                        }
                }
                printf("\n");
        }
}

eglym 发表于 2017-9-29 22:42:54

Q1:
printf(..)里面似乎打错了。a[%d][%d]。
不需要printf,用scanf从键盘获取数组
Q2:
i,j似乎应该分别是行和列,然后不太清楚,如果是第一行第一列的话,似乎应该把两个1改为0;
Q3:
-6d是指输出的格式,

Ccoding 发表于 2017-9-29 23:20:19

eglym 发表于 2017-9-29 22:42
Q1:
printf(..)里面似乎打错了。a[%d][%d]。
不需要printf,用scanf从键盘获取数组


Q1:printf("a[%d][%d]",i,j)
Q2: 题目意思是列出数组像键盘数字那样
789
456
123
但只需要输出
8
456
2

eglym 发表于 2017-9-29 23:27:16

Ccoding 发表于 2017-9-29 23:20
Q1:printf("a[%d][%d]",i,j)
Q2: 题目意思是列出数组像键盘数字那样
789


哦。那是我没弄明白题意了。。
如果过程不清楚的话。。用Debug单步调试就明白了。

Ccoding 发表于 2017-9-29 23:29:20

eglym 发表于 2017-9-29 23:27
哦。那是我没弄明白题意了。。
如果过程不清楚的话。。用Debug单步调试就明白了。

ok我自己再琢磨一下~

丶忘却的年少o 发表于 2017-9-30 09:37:19

Ccoding 发表于 2017-9-29 23:20
Q1:printf("a[%d][%d]",i,j)
Q2: 题目意思是列出数组像键盘数字那样
789


可以输出的,就是在打印的for循环嵌套里用下判断条件。你看你要输出的数的规律,第一行、第三行是中间值对应的列是1,第二行是全部
if ( i == 1 || j == 1 )的意思是遇到中间行或者中间列就执行打印程序(数组从0开始,1就是中间),不是就打印空格填补空缺位。
你想下是这个意思不

Ccoding 发表于 2017-9-30 15:31:35

丶忘却的年少o 发表于 2017-9-30 09:37
可以输出的,就是在打印的for循环嵌套里用下判断条件。你看你要输出的数的规律,第一行、第三行是中间值 ...

大哥~非常感谢,我上课的时候突然间想明白你说的。
我写了一下,判断那里的意思就是打印出"十"这种形式。

丶忘却的年少o 发表于 2017-9-30 16:30:48

Ccoding 发表于 2017-9-30 15:31
大哥~非常感谢,我上课的时候突然间想明白你说的。
我写了一下,判断那里的意思就是打印出"十"这种形式 ...

有的时候不知道,你就把你自己当成电脑,按照程序一步步执行下,要打印什么就在智商写什么,慢慢的有些东西不用去DEBUG就知道是什么意思了。{:10_330:}

Ccoding 发表于 2017-10-1 10:41:02

丶忘却的年少o 发表于 2017-9-30 16:30
有的时候不知道,你就把你自己当成电脑,按照程序一步步执行下,要打印什么就在智商写什么,慢慢的有些东 ...

已铭记在心。谢谢
页: [1]
查看完整版本: 从键盘上输入9个数,保存在二维数组中,按数组原来位置输出第一行和第一列的所有元素