package javaapplication19;
import java.util.Scanner;
public class JavaApplication19 {
public static void main(String[] args) {
System.out.print("**********************\n");
System.out.print("欢迎进入学生信息管理系统\n");
System.out.print("**********************\n");
Scanner sc=new Scanner(System.in);
int n;
System.out.print("请输入学生人数:");
n=sc.nextInt();
student stu[]=new student[n];
int k;
for(k=1;k<=n;k++)
{
System.out.print("请输入学生"+k+"的姓名,学号,专业,课程");
stu[k].name=sc.next();
stu[k].sno=sc.nextInt();
stu[k].subject=sc.next();
stu[k].course=sc.next();
System.out.print("\n");
}
boolean c=true;
do
{
System.out.print("请输入对几号学生信息进行操作:");
int x;
x=sc.nextInt();
System.out.print("请输入想要进行的操作:\t1:获得学号 2:修改学号 3:获得所学课程 4:修改所修课程");
int b;
b=sc.nextInt();
switch(b)
{
case 1:stu[x].getsno();c=false;break;
case 2:stu[x].modifysno();c=false;break;
case 3:stu[x].getcourse();c=false;break;
case 4:stu[x].modifycourse();break;
default:System.out.print("您的输入有误");c=true;
}
}while(c);
}
}
class student{
String name;
int sno;
String subject;
String course;
void getsno()
{
System.out.print("请输入想要获得学号的学生姓名:");
String n;
Scanner reader=new Scanner(System.in);
n=reader.nextLine();
System.out.print("学号为:"+sno+"\n");
}
void modifysno()
{
System.out.print("请输入想要修改学号的学生姓名:");
String n;
Scanner reader=new Scanner(System.in);
n=reader.nextLine();
int sno;
System.out.print("请输入修改后的学号:");
sno=reader.nextInt();
System.out.print("修改后的学号为:"+sno+"\n");
}
void getcourse()
{
System.out.print("请输入想要获得课程的学生姓名:");
String n;
Scanner reader=new Scanner(System.in);
n=reader.nextLine();
System.out.print(n+"所选修的课程为:"+course+"\n");
}
void modifycourse()
{
System.out.print("请输入想要修改课程的学生姓名:");
String n;
Scanner reader=new Scanner(System.in);
n=reader.nextLine();
String course;
System.out.print("请输入修改后的课程名称:");
course=reader.nextLine();
System.out.print("修改后的课程为:"+course+"\n");
}
}
为什么我想输入个学生信息,但是只能输入一个?而且我想问一下,如果我在主类里用一维数组的形式能不能调用student类里面的函数?谢谢!