用java学生成绩系统统计

java编一个学生成绩排序的小程序 - 代码贴 - BCCN
import java.util.*;
public class student
class Node
public String name ;
public String ID;
public int java ;
public int os;
public int PE;
public int total;
Node data;
public student next;
public student creat()
student head,p,r,s1;
int x1,x2,x3,x4;
String n,i;
head=r=null;
System.out.print(&请输入学生的姓名
Internet 成绩&);
System.out.print(&请输入一个x整形数据以0结束:&);
Scanner c= new Scanner(System.in);
n=c.nextLine();
Scanner c0= new Scanner(System.in);
i=c0.nextLine();
Scanner c1= new Scanner(System.in);
x1=c1.nextInt();
Scanner c2= new Scanner(System.in);
x2=c2.nextInt();
Scanner c3= new Scanner(System.in);
x3=c3.nextInt();
while (x1!=0)
student s11=new student();
s11.data.name=n;
s11.data.ID=i;
s11.data.java=x1;
s11.data.os=x2;
s11.data.PE=x3;
s11.data.total=s11.data.java+s11.data.os+s11.data.PE;
if(head==null)
r.next=s11;
Scanner b= new Scanner(System.in);
n=b.nextLine();
Scanner b0= new Scanner(System.in);
i=b0.nextLine();
Scanner b1= new Scanner(System.in);
x1=b1.nextInt();
Scanner b2= new Scanner(System.in);
x2=b2.nextInt();
Scanner b3= new Scanner(System.in);
x3=b3.nextInt();
if(r!=null)
r.next=null;
return head;
public void out(student head)
student p;
System.out.print(&List is:&);
while(p!=null)
System.out.println(&\t&+p.data.name+&\t&+p.data.ID+&\t&+p.data.java+&\t&+p.data.os+&\t&+p.data.PE+&\t&+p.data.total);
public student sortup(student head)
student p=head,pre=null,s=null,q=null;
head.next=null;
while(p!=null)
q=head.next;
while(q!=null && q.data.total&s.data.total)
pre.next=s;
return head;
public student sortdown(student head)
student p=head,pre=null,s=null,q=null;
head.next=null;
while(p!=null)
q=head.next;
while(q!=null && q.data.total&s.data.total)
pre.next=s;
return head;
public static void main(String[] args) {
student x,y;
student a=new student();
x=a.creat();
a.sortdown(x);
a.sortup(x);ACM 统计同成绩学生人数统计同成绩学生人数Time Limit:
MS (Java/Others)
Memory Limit:
K (Java/Others)Total Submission(s): 2139
Accepted Submission(s): 1211Problem Description读入N名学生的成绩,将获得某一给定分数的学生人数输出。 &Input测试输入包含若干测试用例,每个测试用例的格式为第1行:N第2行:N名学生的成绩,相邻两数字用一个空格间隔。第3行:给定分数当读到N=0时输入结束。其中N不超过1000,成绩分数为(包含)0到100之间的一个整数。 &Output对每个测试用例,将获得给定分数的学生人数输出。 &Sample Input380 60 9060285 660560 75 90 55 75750 &Sample Output102HintHint& Huge input, scanf is recommended.//这句没搞懂我的答案:上面结果对,但提交Wang Answer!
Why 请指点一下!Thanks..#include&stdio.h&void main(){ long n,i,j,a[1000],m; while(scanf(&%ld&,&n),n) {
for(i=1;i&=n;i++)
scanf(&%ld&,&a[i]);
scanf(&%ld&,&m);
for(i=1;i&=n;i++)
if(m==a[i])
printf(&%ld\n&,j); }}
回答1:简单题,不过你的方法不对,我是acmer,交个朋友吧,QQ:#include &stdio.h$>$ void main()& {& int i,n,b;while(scanf(&%d&,&n)!=EOF){a[101]={0};for(i=0;i&n;i++){scanf(&%d&,&b);a[b]++;}scanf(&%d&,&b);printf(&%d\n&,a[b]);}& }& 试试吧,不行再找我
liang2qiao
回答2:scanf is recommended///
这句的意思 是 推荐使用scanf,这样效率会高些。 如用cin可能会超时,因为此题数据里太大。。。
回答3:当n=1000时,你的程序就挂掉了,因为会访问到a[1000]。而你定义的数组下标最大到999.而且a[0]这个元素你也没有使用到。你把i=1;i&=n改成i=0;i&n试试,应该没问题了。另外,6楼的方法更好,输入读完后,每个分数的人数也就确定了。
回答4:看我的代码,在oj上通过,#include&stdio.h&main(){
int a[1000]; int *p; for (;;) {
scanf(&%d&,&n);
for (p=a;p&a+n;p++)
scanf (&%d&,p);
scanf(&%d&,&score);
for (p=a;p&a+n;p++)
if (*p==score)
printf(&%d\n&,num); }}
huyuefeng2007
回答5:确实是8楼提到的问题,把a[1000]改成[a1001]就通过了,6楼的同学方法很不错不过要稍微改下#include &stdio.h&void main(){int i,n,b;for (;;)//只是把while改成for语句 { int a[101]={0};//原来的少了个int scanf(&%d&,&n); if (n==0)
for(i=0;i &n;i++)
scanf(&%d&,&b);
} scanf(&%d&,&b); printf(&%d\n&,a[b]); }}&
huyuefeng2007二维数组举例:汇总学生成绩_Java_ThinkSAAS
二维数组举例:汇总学生成绩
二维数组举例:汇总学生成绩
内容来源: 网络
PHP开发框架
开发工具/编程工具
服务器环境
ThinkSAAS商业授权:
ThinkSAAS为用户提供有偿个性定制开发服务
ThinkSAAS将为商业授权用户提供二次开发指导和技术支持
让ThinkSAAS更好,把建议拿来。
开发客服微信 上传我的文档
 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
正在努力加载中...
基于JAVA的学生成绩表的设计与实现11
下载积分:1588
内容提示:基于JAVA的学生成绩表的设计与实现11
文档格式:DOC|
浏览次数:64|
上传日期: 22:24:21|
文档星级:
全文阅读已结束,如果下载本文需要使用
 1588 积分
下载此文档
该用户还上传了这些文档
基于JAVA的学生成绩表的设计与实现11
官方公共微信第1页/共2页
设计题目1.2
输入某一个班级学生的Java程序设计期末考试成绩,以-1作为结束标记:
(1) 统计班级学生中,不及格、及格、中等、良好、优秀的人数;
(2) 求该班级学生这门课的考试平均分数。
import java.util.*;
public class jc12{
static float rank(float[] a,int i)
int b=0,j=0,z=0,l=0,y=0,p;
for(p=0;p&=i;p++)
if(a[p]&60&&a[p]&=0)b++;
else if(a[p]&70&&a[p]&=60)j++;
else if(a[p]&80&&a[p]&=70)z++;
else if(a[p]&90&&a[p]&=80)l++;
else if(a[p]&=90&&a[p]&=100)y++;
System.out.println("不及格人数:"+b);
System.out.println("及格人数:"+j);
System.out.println("中等人数:"+z);
System.out.println("良好人数:"+l);
System.out.println("优秀人数:"+y);
static float avarge(float[] a,int i)
float sum=0,
for(j=0;j&i;j++)
sum+=a[j];
avarge=sum/i;
System.out.println("班级平均分:"+avarge);
System.out.print("总人数为:");
public static void main(String args[])
第1页/共2页
寻找更多 ""}

我要回帖

更多关于 java学生成绩统计 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信