问题描述 在很多程序设计语言中,忘记给变量赋初值的错误常令人头疼。 在下面的问题中,最开始仅有变量a中有确定的值。变量为单个小写字母, 每行恰好有三个字符,中间一个是赋值运算符'='。 请编程求出含N行的程序段运行以后有哪些变量中有确定的值。
输入: 第一行:N (0<N<=10^6) 以下N行,每行3个字符,为一条语句 输出: 如果没有,输出 none 否则在一行中按字母表顺序给出所有有确定值的变量名。
样例 输入: 4 b=a c=d d=b e=f 输出: a b d program assigning; var i:integer; ch:char; tot,n:integer; mark:array['a'..'z'] of boolean; s:string[3]; first:boolean;
begin tot:=0; first:=true; mark['a']:=true; readln(n); for i:=1 to n do begin readln(s); mark[s[1]]:=mark[s[3]]; end; for ch:='a' to 'z' do if mark[ch] then begin if(not first) then write(' '); first:=false; write(ch); inc(tot); end; if tot=0 then writeln('none') else writeln; end.