在SAS数据步骤中,以下代码之间有什么区别:
DATA MK_RETURN_DATA;
SET MK_RETURN;
RUN;
和
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
FILE* p_file = 0;
char name[100];
char st[100];
printf("what file\n");
scanf("%s", name);
p_file = fopen(name, "r");
int count = 0;
while (fgets(st, sizeof st, p_file) != NULL)
{
count = count + 1;
printf("%d: ", count);
printf("%s", st);
}
fclose(p_file);
return 0;
}
输出语句在这里绝对必要吗? (我的理解是,由于没有指定条件,即使没有输出语句,输出仍将自动执行。)
答案 0 :(得分:1)
这里输出语句根本不是必需的。 您只有一个输出数据集,因此使用&#39;输出&#39;声明不是必需的。但是如果有多个输出数据集,则输出&#39;声明可能会被使用..请参阅以下示例
data MK_RETURN;
input name :$10. age;
datalines;
Hardik 23
Mishima 47
run;
DATA MK_RETURN_DATA MK_RETURN_DATA2;
SET MK_RETURN;
if age= 23 then output MK_RETURN_DATA;
if age= 47 then output MK_RETURN_DATA2;
RUN;
此处23岁时的观察将转到MK_RETURN_DATA数据集,年龄= 47的观察将转到MK_RETURN_DATA2数据集。
希望有所帮助