24小时热门版块排行榜    

查看: 1436  |  回复: 4
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

rxy7cm

铜虫 (小有名气)

[求助] 怎么在一个0矩阵中产生随机分布的1小矩阵

要在一个100*100的0矩阵中产生随机分布的5*5的1矩阵,MATLAB可以实现,但是C语言就是不行,求大神指点,帮忙转化成C语言,现在问题应该出在C语言产生随机数上。
MATLAB代码如下:                 

a=zeros(100,100);
for i =1:100
for j=1:100
p=round((i+4)/5);
q=round((j+4)/5);
m=rand;
for c1=1:5
for c2=1:5
if m>0.3
a((p-1)*5+c1,(q-1)*5+c2)=1;
else
a((p-1)*5+c1,(q-1)*5+c2)=0;
end
end
end
end
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

rxy7cm

铜虫 (小有名气)

引用回帖:
3楼: Originally posted by 绿遍山原 at 2013-11-06 11:07:04
不好意思看错了,应该是m=((double) rand())/RAND_MAX 产生0-1之间的小数。...

能帮忙把语言转化成C语言吗?自己写的运行不出来
double rate=0.3;
void main()

{
        fp1=fopen(WXYZ_1,"w";

        for(i = 1; i<n; i++)

        {                        
                p=(i+4)/5;
       
                for(j =1; j<n; j++)               
                {                                
                        q=(j+4)/5;       
  
                        srand((unsigned)time(NULL));

                      r=((double)rand())/RAND_MAX;

                        for(c1 = 1; c1<m; c1++)                       
                        {  
       
                                a=(p-1)*m+c1;                 
                                for(c2 = 1; c2<m; c2++)
       
                                {  
                                        b=(q-1)*m+c2;
                               
                                if(r>rate)                                                               
                                A[a]=1;
                                else
                                A[a]=0;
                                       
                                       
               
                                }
                       
                       
               
                               

               
                        }


fprintf(fp1,"%d ",A[j]);       

                       
                                                               
       
                }       


        fprintf(fp1,"%d\n";
       
       
       
        }                               
        fclose(fp1);
}
4楼2013-11-06 16:43:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

绿遍山原

铜虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
用m = rand() % 100产生0-99之间的随机整数,然后按你的程序赋值就行了。要包含stdlib.h
要夢遊,不要催眠。
2楼2013-11-06 11:04:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

绿遍山原

铜虫 (小有名气)

【答案】应助回帖

引用回帖:
2楼: Originally posted by 绿遍山原 at 2013-11-06 11:04:12
用m = rand() % 100产生0-99之间的随机整数,然后按你的程序赋值就行了。要包含stdlib.h

不好意思看错了,应该是m=((double) rand())/RAND_MAX 产生0-1之间的小数。
要夢遊,不要催眠。
3楼2013-11-06 11:07:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

rxy7cm

铜虫 (小有名气)

引用回帖:
4楼: Originally posted by rxy7cm at 2013-11-06 16:43:05
能帮忙把语言转化成C语言吗?自己写的运行不出来
double rate=0.3;
void main()

{
        fp1=fopen(WXYZ_1,"w";

        for(i = 1; i<n; i++)

        {                        
                p=(i+4)/5;
       
                for(j =1; j<n; j++)         ...

你这不对吧,得输出矩阵彩信,你输出的咋是一维的
5楼2013-11-06 17:02:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 328求调剂,英语六级551,有科研经历 +3 生物工程调剂 2026-03-16 10/500 2026-03-18 20:41 by Wangjingyue
[考研] 材料专业求调剂 +5 hanamiko 2026-03-18 5/250 2026-03-18 20:19 by 星空星月
[考研] 085600材料与化工 +5 安全上岸! 2026-03-16 5/250 2026-03-18 15:33 by cmz0325
[考研] 08工科 320总分 求调剂 +5 梨花珞晚风 2026-03-17 5/250 2026-03-18 14:49 by haxia
[考研] 311求调剂 +6 26研0 2026-03-15 6/300 2026-03-18 14:43 by haxia
[考研] 297求调剂 +8 戏精丹丹丹 2026-03-17 8/400 2026-03-18 14:30 by laoshidan
[考研] 材料,纺织,生物(0856、0710),化学招生啦 +3 Eember. 2026-03-17 9/450 2026-03-18 10:28 by Eember.
[考研] 301求调剂 +9 yy要上岸呀 2026-03-17 9/450 2026-03-18 08:58 by 无际的草原
[考研] 278求调剂 +5 烟火先于春 2026-03-17 5/250 2026-03-18 08:43 by 星空星月
[考研] 材料专硕326求调剂 +6 墨煜姒莘 2026-03-15 7/350 2026-03-17 17:10 by ruiyingmiao
[考研] 085601求调剂 +4 Du.11 2026-03-16 4/200 2026-03-17 17:08 by ruiyingmiao
[考研] 085600材料与化工求调剂 +5 绪幸与子 2026-03-17 5/250 2026-03-17 16:40 by laoshidan
[考研] 一志愿南京大学,080500材料科学与工程,调剂 +4 Jy? 2026-03-16 4/200 2026-03-17 11:02 by gaoqiong
[论文投稿] 有没有大佬发小论文能带我个二作 +3 增锐漏人 2026-03-17 4/200 2026-03-17 09:26 by xs74101122
[考研] 278求调剂 +3 Yy7400 2026-03-13 3/150 2026-03-17 08:24 by laoshidan
[基金申请] 今年的国基金是打分制吗? 50+3 zhanghaozhu 2026-03-14 3/150 2026-03-16 17:07 by 北京莱茵润色
[考研] 326求调剂 +3 mlpqaz03 2026-03-15 3/150 2026-03-16 07:33 by Iveryant
[考研] 求调剂 +5 一定有学上- 2026-03-12 5/250 2026-03-13 18:31 by ms629
[考研] 274求调剂 +3 S.H1 2026-03-12 3/150 2026-03-13 15:15 by JourneyLucky
[考研] 085600材料与化工 309分请求调剂 +7 dtdxzxx 2026-03-12 8/400 2026-03-13 14:43 by jxchenghu
信息提示
请填处理意见