24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 365  |  回复: 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 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 085600专硕材料与化工348分求调剂 +9 上学啦! 2026-04-01 10/500 2026-04-03 01:13 by BruceLiu320
[考研] 求调剂 +11 张zz111 2026-03-27 12/600 2026-04-02 22:47 by JourneyLucky
[考研] 085600调剂 +3 1amJJ 2026-04-02 3/150 2026-04-02 22:00 by 科研小专家
[考研] 学硕机械工程303求调剂 +5 无名所以叫吴明 2026-03-30 5/250 2026-04-02 20:12 by hengsmith
[考研] 321求调剂 +12 y-yh 2026-04-01 14/700 2026-04-02 19:34 by 帕尔马拉特
[考研] 348求调剂 +11 zzzzyk123 2026-04-01 11/550 2026-04-02 16:52 by Wang200018
[考研] 318求调剂 +3 笃行致远. 2026-03-31 4/200 2026-04-02 15:56 by Jaylen.
[考研] 一志愿厦门大学材料工程专硕354找调剂!!! +7 贝呗钡钡 2026-03-30 7/350 2026-04-02 12:19 by 1753564080
[考研] 266分,一志愿电气工程,本科材料,求材料专业调剂 +10 哇呼哼呼哼 2026-04-01 11/550 2026-04-02 11:31 by lnilvy
[考研] 324分 085600材料与化工 +20 呆鹅oor 2026-03-27 20/1000 2026-04-02 10:13 by oooqiao
[考研] 367求调剂 +8 芋泥啵啵… 2026-03-28 8/400 2026-04-02 09:20 by olim
[考研] 英一数一408,总分284,二战真诚求调剂 +12 12.27 2026-03-30 14/700 2026-04-02 00:18 by 欣喜777
[考研] 070300化学279求调剂 +15 哈哈哈^_^ 2026-03-31 17/850 2026-04-01 21:37 by 给你你注意休息
[考研] 求调剂0703 +5 周嘉尧 2026-03-31 8/400 2026-04-01 20:32 by ltltkkk
[考研] 335求调剂 +3 321* 2026-03-31 4/200 2026-04-01 00:00 by 321*
[考研] 合肥区域性重点一本招收调剂 +4 6266jl 2026-03-30 8/400 2026-03-31 18:43 by 6266jl
[基金申请] 面上5B能上会吗? +8 redcom 2026-03-29 8/400 2026-03-31 15:53 by niuailing
[考研] 266求调剂 +3 哇呼哼呼哼 2026-03-29 3/150 2026-03-31 10:06 by cal0306
[考研] 083000环境科学与工程调剂,总分281 +4 橙子(胜意) 2026-03-30 4/200 2026-03-31 00:44 by Linzejun
[考研] 一志愿上海理工能源动力(085800)310分求调剂 +3 zhangmingc 2026-03-27 4/200 2026-03-27 19:01 by 给你你注意休息
信息提示
请填处理意见