here is a possible solution:
[pre]%macro printit(dsn=);
title1 Printing &dsn;
proc print data=&dsn(obs=5);
run;
%mend printit;
%macro getdatalist(lib=);
%local count i;
proc sql noprint;
select distinct memname
into :mem1 - :mem&sysmaxlong
from dictionary.members
where libname=upcase("&lib");
quit;
%let count = &sqlobs;
%do i = 1 %to &count;
%printit(dsn=&lib..&&mem&i);
%end;
%mend getdatalist;
%getdatalist(lib=sasclass)
[/pre]