| 查看: 344 | 回复: 3 | |||
[求助]
菜鸟提问
|
|
program main implicit none type node real x !设置随机数 type(node),pointer::next end type type(node),pointer::head,q,p real rand integer i,j integer::m=0,n=0 call random_seed( ) nullify(head) do i=1,10 call random_number(rand) allocate(q) q%x=rand q%next=>head head=>q end do q=>head do while(associated(q)) print*,q%x q=>q%next end do !判断是否大于0.50 q=>head do while(associated(q)) if(q%x<0.50.and.associated(q,head))then n=n+1 !判断小于0.5的个数 head=>q%next deallocate(q) q=>head else if(q%x<0.50.and..not.associated(q,head))then n=n+1 p=>q%next deallocate(q) q=>p else m=m+1 q=>q%next end if end do write(*,*) "大于0.5的个数m=", m write(*,*) "小于0.5的个数n=", n !输出大于0.5的数 q=>head do while(associated(q)) print*,q%x q=>q%next end do end 请大家帮忙看看这个程序问题出在哪里了,在输出m和n的值时还是正确的,为什么加上最后几句 显示大于0.5的数时就会无限循环下去,而且得到的结果还是错误的呢,谢谢 |
» 猜你喜欢
存款400万可以在学校里躺平吗
已经有15人回复
拟解决的关键科学问题还要不要写
已经有6人回复
Materials Today Chemistry审稿周期
已经有6人回复
基金委咋了?2026年的指南还没有出来?
已经有10人回复
基金申报
已经有6人回复
推荐一本书
已经有13人回复
国自然申请面上模板最新2026版出了吗?
已经有17人回复
纳米粒子粒径的测量
已经有8人回复
疑惑?
已经有5人回复
计算机、0854电子信息(085401-058412)调剂
已经有5人回复
dingxb
金虫 (正式写手)
迷途书虫
- 应助: 12 (小学生)
- 金币: 1674.5
- 帖子: 482
- 在线: 59.5小时
- 虫号: 34085
- 注册: 2004-01-06
- 性别: GG
- 专业: 原子和分子物理
【答案】应助回帖
★ ★
微尘、梦想(金币+2): 谢谢参与应助! 2011-04-19 15:18:51
qwer_2009(金币+10): 谢谢,最后不是死循环,m和n的判断是对的,是中间判断是指针指示出错了,谢谢你哈 2011-04-19 17:03:15
微尘、梦想(金币+2): 谢谢参与应助! 2011-04-19 15:18:51
qwer_2009(金币+10): 谢谢,最后不是死循环,m和n的判断是对的,是中间判断是指针指示出错了,谢谢你哈 2011-04-19 17:03:15
|
ò????????@????h???????h?? ??l???????????So???????F?o????h????}?? ???Y???e?`???????lz?????????????Y?????e?`??? ????? write(*,*) "????0.5?????m=", m write(*,*) "С??0.5?????n=", n ??z?????P??????????? ????????????t??????????? do while(associated(q)) print*,q%x q=>q%next end do |

2楼2011-04-19 14:48:26
jiayanhui
木虫 (正式写手)
大木虫
- 应助: 1 (幼儿园)
- 金币: 2897.2
- 红花: 3
- 沙发: 1
- 帖子: 972
- 在线: 146.1小时
- 虫号: 387217
- 注册: 2007-05-30
- 专业: 原子和分子物理

3楼2011-04-19 17:00:22
4楼2011-04-19 17:02:04











回复此楼