问答题 [说明] 本程序中预设了若干个用户名和口令。用户输入正确的用户名后,可以查找对应的口令,一旦输入结束标记“end”,程序结束。 [Java代码] import java. io. *: public class User { public String user; public Siring pass; public User() { } public User( String u,String p) { user=u; pass=p; } public String {{U}}(1) {{/U}} () { return this. user; } public String {{U}}(2) {{/U}} () { return this. pass; } public static void main(String[] args) { User ua[]={new User("Li","123456"), new User("wang","654321"), new User("Song","666666")}; while(true) { InputStreamReader reader = new InputStreamReader(System. in); BufferedReader inpul = new BnfferedReader(reader); System. out. print("Enter your name:"); String name = null; try { name = input. readLine();} catch (IOException ex) {} if({{U}} (3) {{/U}}) break; int i; for (i=0;i<3;i++) { if (name. equals(ua[i]. getUser())){ System. out. println("密码:"+ua[i].getPass()); {{U}} (4) {{/U}}; } } if ({{U}} (5) {{/U}}) System. out. println("该用户不存在!"); } } }
【正确答案】
【答案解析】(1) getUser (2) getPass (3) name.equals("end") (4) break (5) i= =3或i>=3或i>2或其他等效形式 [解析] User类中包括数据成员User和pass,分别存储用户名和口令,另有一个构造函数和getUser()、getPass()两个成员函数,分别用于获取用户名和口令。main ()中包含一个User类型的数组ua.当用户输入一个用户名后,在ua中查找,若找得到则输出对应的口令,否则输出相应的提示信息。 (1)~(2)从后面的代码中可以推断出,User类中有getUser()、getPass()两个成员函数; (3)此处给出了退出程序的判断条件,即输入的用户名等于“end”; (4)此处的for循环用于查找用户名,若找到了可即刻退出循环。 (5)此处是判断用户是否存在的条件,如果正常结束 for循环,则说明没用找到用户。