楼主: 郑小知
1959 5

[原创博文] 请教次程序中的@如何解释? [推广有奖]

  • 0关注
  • 0粉丝

硕士生

27%

还不是VIP/贵宾

-

威望
0
论坛币
30 个
通用积分
0
学术水平
1 点
热心指数
2 点
信用等级
1 点
经验
487 点
帖子
133
精华
0
在线时间
92 小时
注册时间
2007-5-19
最后登录
2021-5-2

楼主
郑小知 发表于 2010-9-28 13:20:07 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
@有关书籍上说明执行下一个INPUT语句指针移到下一记录行,要求一条记录必须对应一个数据行,但是下列程序中的@让我很疑惑,请高手指点一二.
       data bb;
          input id dbp @;
          no=1; if dbp>0 then output;
          input dbp @;
          no=2; if dbp>0 then output;
          input dbp @;
          no=3; if dbp>0 then output;
          input dbp ;
          no=4; if dbp>0 then output;
        cards;
        1 70 75 86 80
        2 85 82 86 84
        3 74 52 80 62
        4 90  . 62 72
        5 75 80  . 75
;

按照书上解释,执行完1 和70 的输入后,指针会移到下一行也就是2 85 82....的开头,但是次程序继续输入75,处理,86,处理,让我有点疑惑.
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:output Input outpu cards put语句

沙发
crackman 发表于 2010-9-28 13:29:34
@换行符
因为只有两个变量
所以当指针读到第二个数的时候
就直接换在第二行继续读

藤椅
crackman 发表于 2010-9-28 13:31:31
看看PDV里面的一些指针如何运行的文章

板凳
郑小知 发表于 2010-9-28 15:42:40
谢谢老大,问题解决了,你回答的几乎完美.我刚翻阅了PDV指针参考.

报纸
bobguy 发表于 2010-9-29 09:32:16
郑小知 发表于 2010-9-28 13:20
@有关书籍上说明执行下一个INPUT语句指针移到下一记录行,要求一条记录必须对应一个数据行,但是下列程序中的@让我很疑惑,请高手指点一二.
       data bb;
          input id dbp @;
          no=1; if dbp>0 then output;
          input dbp @;
          no=2; if dbp>0 then output;
          input dbp @;
          no=3; if dbp>0 then output;
          input dbp ;
          no=4; if dbp>0 then output;
        cards;
        1 70 75 86 80
        2 85 82 86 84
        3 74 52 80 62
        4 90  . 62 72
        5 75 80  . 75
;

按照书上解释,执行完1 和70 的输入后,指针会移到下一行也就是2 85 82....的开头,但是次程序继续输入75,处理,86,处理,让我有点疑惑.
It is a line-hold. Here is the meaning.

Use a trailing @ at the end of the INPUT statement to hold the record in the input buffer for the execution of the next INPUT statement.


A simplified version would be,


      data bb;

          input id     @;
          do no=1 to 4;
            input dbp @;
            if dbp>0 then output;
          end;

        cards;
        1 70 75 86 80
        2 85 82 86 84
        3 74 52 80 62
        4 90  . 62 72
        5 75 80  . 75
;

地板
郑小知 发表于 2010-10-4 22:49:18
5# bobguy
非常感谢副教授!

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-5 23:51