24小时热门版块排行榜    

查看: 450  |  回复: 3

qwer_2009

铜虫 (小有名气)

[求助] 菜鸟提问

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的数时就会无限循环下去,而且得到的结果还是错误的呢,谢谢
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingxb

金虫 (正式写手)

迷途书虫

【答案】应助回帖

★ ★
微尘、梦想(金币+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
http://sites.google.com/site/nwnuatom/个人网站,欢迎猛击乱点!
2楼2011-04-19 14:48:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jiayanhui

木虫 (正式写手)

大木虫


微尘、梦想(金币+1): 谢谢参与…… 2011-04-20 15:48:57
应该为p%next=q%next

如果成立时,else后面写成p=q,q=>q%next 应该就可以了
春天来了
3楼2011-04-19 17:00:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qwer_2009

铜虫 (小有名气)

已经解决了,
是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

除了问题 呵呵 谢谢
4楼2011-04-19 17:02:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 qwer_2009 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 6F5UbRU2I5hL 2026-09-14 3/150 2026-09-15 00:25 by mibUvS8DDCwf
[考博] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 s3fFTmArrBt6 2026-09-14 5/250 2026-09-14 23:57 by vZfe6xYu34yj
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 s3fFTmArrBt6 2026-09-14 3/150 2026-09-14 23:45 by vZfe6xYu34yj
[考博] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 s3fFTmArrBt6 2026-09-14 5/250 2026-09-14 23:33 by vZfe6xYu34yj
[博后之家] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 s3fFTmArrBt6 2026-09-13 4/200 2026-09-14 23:24 by vZfe6xYu34yj
[教师之家] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 s3fFTmArrBt6 2026-09-13 3/150 2026-09-14 23:21 by vZfe6xYu34yj
[硕博家园] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 s3fFTmArrBt6 2026-09-13 5/250 2026-09-14 23:13 by vZfe6xYu34yj
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 s3fFTmArrBt6 2026-09-13 5/250 2026-09-14 22:45 by vZfe6xYu34yj
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 LwdutQ8HoqWP 2026-09-13 6/300 2026-09-14 22:37 by vZfe6xYu34yj
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 LwdutQ8HoqWP 2026-09-13 3/150 2026-09-14 22:33 by vZfe6xYu34yj
[找工作] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 3n8v2C8RimXI 2026-09-13 5/250 2026-09-14 22:13 by vZfe6xYu34yj
[博后之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 3n8v2C8RimXI 2026-09-13 5/250 2026-09-14 22:12 by vZfe6xYu34yj
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +5 3n8v2C8RimXI 2026-09-13 5/250 2026-09-14 22:01 by vZfe6xYu34yj
[考博] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +5 QUjhNVAcOSff 2026-09-13 5/250 2026-09-14 21:36 by vZfe6xYu34yj
[公派出国] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 QUjhNVAcOSff 2026-09-13 7/350 2026-09-14 21:21 by vZfe6xYu34yj
[考博] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +4 3n8v2C8RimXI 2026-09-13 4/200 2026-09-14 15:37 by Aj1rhIDL5ixY
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +5 QUjhNVAcOSff 2026-09-13 6/300 2026-09-14 15:21 by Aj1rhIDL5ixY
[基金申请] 求教各位大神:2026教育部人文社科青年基金项目何时公示呀? +5 云宴山人 2026-09-10 7/350 2026-09-14 12:11 by ecnu2013
[找工作] 浙江师范大学是怎么坑我的 +6 recruit123 2026-09-09 6/300 2026-09-14 12:00 by 萨仁其其格
[基金申请] 面上有专家说实验设备不是我们单位的 +6 zj_muchong 2026-09-08 8/400 2026-09-11 06:56 by suifengdao
信息提示
请填处理意见