鱼C论坛

 找回密码
 立即注册
查看: 3059|回复: 19

问题,急,指针,数组

[复制链接]
发表于 2014-8-22 16:55:55 | 显示全部楼层 |阅读模式
1鱼币
使得打印数字的顺序是:1    9      17
                                     3   11      19     
                                     5    13     21
                                    7      15    23

题目

题目

最佳答案

查看完整内容

也来凑凑热闹
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-8-22 16:55:56 | 显示全部楼层
  1. #include <stdio.h>

  2. const int squNum = 4; //几x几方格
  3. int main()
  4. {
  5.         for(int i=0;i<squNum;i++)
  6.         {
  7.                 for(int j=0;j<squNum;j++)
  8.                         printf("%5d",1+j*2*squNum+i*2);
  9.                 printf("\n");
  10.         }
  11.         return 0;
  12. }
复制代码


也来凑凑热闹
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-8-22 17:07:59 | 显示全部楼层
不要截图,贴代码,帮你改。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-8-22 17:26:47 | 显示全部楼层
章伯魂 发表于 2014-8-22 17:07
不要截图,贴代码,帮你改。

怎么贴代码?第一次发,不懂
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-8-22 19:01:50 | 显示全部楼层
Sunny-smile 发表于 2014-8-22 17:26
怎么贴代码?第一次发,不懂

把代码复制上来,点击<>这个按钮。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-8-22 19:29:22 | 显示全部楼层
小甲鱼 发表于 2014-8-22 19:01
把代码复制上来,点击这个按钮。

怎么复制代码呢?复制不进去
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-8-22 20:40:27 | 显示全部楼层
Sunny-smile 发表于 2014-8-22 19:29
怎么复制代码呢?复制不进去

Ctrl + v
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-8-22 21:52:08 | 显示全部楼层
  1. #include <stdio.h>
  2. int main()
  3. {
  4.         int a [4][3]={1,3,5,7,9,11,13,15,17,19,21,23};//定义两个二维数组,并将a初始化
  5.         int*p;        //p是int*型指针变量
  6.         for(p=a[0];p<a[0]+12;p++)//使p依然指向下一个元素
  7.         {
  8.                 if((p-a[0])%3==0)//p移动4次后换行。if语句的作用是使输出4个数据后换行
  9.                         printf("\n");
  10.                 printf("%3d",*p);//输出P指向元素的值
  11.         }
  12.         printf("\n");

  13.         return 0;

  14. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-8-22 21:52:58 | 显示全部楼层
章伯魂 发表于 2014-8-22 17:07
不要截图,贴代码,帮你改。
  1. #include <stdio.h>
  2. int main()
  3. {
  4.         int a [4][3]={1,3,5,7,9,11,13,15,17,19,21,23};//定义两个二维数组,并将a初始化
  5.         int*p;        //p是int*型指针变量
  6.         for(p=a[0];p<a[0]+12;p++)//使p依然指向下一个元素
  7.         {
  8.                 if((p-a[0])%3==0)//p移动4次后换行。if语句的作用是使输出4个数据后换行
  9.                         printf("\n");
  10.                 printf("%3d",*p);//输出P指向元素的值
  11.         }
  12.         printf("\n");

  13.         return 0;

  14. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-8-22 21:56:56 | 显示全部楼层
我只是路过打酱油的。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-8-22 22:36:44 | 显示全部楼层

二维数组输出时行列互换就行啦
  1. #include <stdio.h>
  2. int main()
  3. {
  4.         int a [4][3]={1,3,5,7,9,11,13,15,17,19,21,23};//定义两个二维数组,并将a初始化
  5.         int m,n;
  6.         for(m=0;m<4;m++)
  7.         {
  8.             for(n=0;n<3;n++)
  9.                  printf("%3d",a[n][m])//行列互换
  10.             printf("\n");//输出3个数换行
  11.         }
  12.         return 0;
  13. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-8-22 22:41:13 | 显示全部楼层
calton007 发表于 2014-8-22 22:36
二维数组输出时行列互换就行啦

结果有点错误哦,怎么会重复出现了9
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-8-22 22:54:02 | 显示全部楼层
Sunny-smile 发表于 2014-8-22 22:41
结果有点错误哦,怎么会重复出现了9

sorry我看错你的题目了
我看成了将一个3行4列的数组转置成4行3列的
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-8-22 22:56:14 | 显示全部楼层
calton007 发表于 2014-8-22 22:54
sorry我看错你的题目了
我看成了将一个3行4列的数组转置成4行3列的

亲,能不把教我一下呢?做不完,我就不能睡觉了:cry
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-8-22 23:04:08 | 显示全部楼层
Sunny-smile 发表于 2014-8-22 22:56
亲,能不把教我一下呢?做不完,我就不能睡觉了

可是这样子数据没有规律欸
你确认一下题目真的是a[4][3],不是a[3][4]吗?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-8-23 08:53:45 | 显示全部楼层
calton007 发表于 2014-8-22 23:04
可是这样子数据没有规律欸
你确认一下题目真的是a[4][3],不是a[3][4]吗?

是的,我也没发现什么规律,唉,苦想n久都不知道怎么编
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-8-26 20:35:07 | 显示全部楼层
学习了
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-8-27 21:41:35 | 显示全部楼层
我是来凑热闹的
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-8-28 17:03:12 | 显示全部楼层
  1. #include "stdio.h"

  2. int main()
  3. {
  4.         int a [4][3]={1,3,5,7,9,11,13,15,17,19,21,23};//定义两个二维数组,并将a初始化

  5.         for (int i=0,j=0;i<4;i++)
  6.         {
  7.                 j=i;

  8.                 for (int k=0;k<3;k++)
  9.                 {
  10.                         printf("%3d",a[j/3][j%3]);
  11.                         j=j+4;
  12.                 }       

  13.                 printf("\n");
  14.         }       

  15.         return 0;
  16. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-8-28 17:05:19 | 显示全部楼层
自己写的,感觉结果应该没有问题,大家交流一下

运行结果

运行结果
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-12 20:36

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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