求助 C++中初始化一个三行三列二维数组,值为从0到9随机排列,每数出现一次,之后按数组输出如何编写 5

各位大神帮帮忙可再追加悬赏急求急求... 各位大神帮帮忙 可再追加悬赏 急求急求 展开
 我来答
zhjiemm
2012-11-11 · TA获得超过2643个赞
知道大有可为答主
回答量:1834
采纳率:75%
帮助的人:710万
展开全部

1,先对数组赋值1-9;

2,对数组进行随机交换

3,输出。

 

以下代码在TC下运行成功,每次运行都会是一个二维 的随机数组。

 

#include <stdlib.h>

#include <stdio.h>

#include <time.h>


 

 

int main()

{

  int aa[3][3];

  randomize();


 

  for(int i=0,*a=aa[0];i<9;i++)

    a[i]=i+1;

  for(int i=0,j,k,t,*a=aa[0];i<9;i++)

  {

    j=rand()%9;k=rand()%9;

    t = a[j];

    a[j]=a[k];

    a[k] = t;

  }

  for(int i=0;i<3;i++)

  {

     for(int j=0;j<3;j++)

      printf("%d ",aa[i][j]);

     printf("\n");

  }


 

  return 0;

 

追问
请问为什么每次执行时 randomize() 都无法运行?
追答
能编译通过吗? randomize() 是初始化随机数种子,保证每次运行的随机化。

如果不能编译,请用以下代替:
time_t t;
srand((unsigned) time(&t));
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
雾少baby
2012-11-21 · 超过26用户采纳过TA的回答
知道答主
回答量:100
采纳率:0%
帮助的人:48.4万
展开全部
随机排列我不懂!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式