C语言怎么实现10条自动分屏,C语言编程,要求实现50个学生的期末考试成绩,在Dos窗口显示25个一窗分屏问题...

因为有50个学生,一个窗口显示不了,所以会一闪而过到最后,前面的就看不了

现在要实现先显示25个,分屏,再按键盘显示另外25个

怎么实现,可以把完整的代码写出来

实现分屏之前的编程如下,

#include

#include

#include

#include

#define HANG 10

#define LIAN 7

int main()

{

static float score[HANG][LIAN],temp;

int num[HANG],i,j,k,tempnum;

char ch,name[HANG][8],tempname[8];

time_t t;

srand((unsigned) time(&t));

printf("输入学生学号及单科成绩:");

for(i=0;i

{

printf("\n请输入第%d个学生学号:",i+1);

scanf("%d",&num[i]);

printf("\n请输入第%d个学生姓名:",i+1);

scanf("%s",name[i]);

printf("\n输入第%d个学生的五科单科成绩:",i+1);

for(j=0;j

{

/*   scanf("%f",&tmp);

score[i][j]=tmp;  */

score[i][j]=rand()%100+1;

score[i][5]=score[i][5]+score[i][j];

}

score[i][6]=score[i][5]/5;

//  printf("%5.1f",score[i][6]);

}

printf("\n学号 姓  名  语文  数学  物理  化学  英语 总 分 平均分\n");

for(i=0;i

{

printf("%4d",num[i]);

printf("%7s",name[i]);

for(j=0;j

printf("%6.1f",score[i][j]);

printf("\n");

}

//排序

for(i=0;i

for(j=0;j

{

if(score[j][6]

{

tempnum=num[j];    //交换学号

num[j]=num[j+1];

num[j+1]=tempnum;

strcpy(tempname,name[j]); //交换姓名

strcpy(name[j],name[j+1]);

strcpy(name[j+1],tempname);

for(k=0;k

{

temp=score[j][k];

score[j][k]=score[j+1][k];

score[j+1][k]=temp;

}

}

}

printf("\n排序后的成绩是:\n");

printf("\n学号 姓  名  语文  数学  物理  化学  英语 总 分 平均分\n");

for(i=0;i

{

printf("%4d",num[i]);

printf("%7s",name[i]);

for(j=0;j

printf("%6.1f",score[i][j]);

printf("\n");

}

ch=getch();

return 0;

}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部