【c分页显示】
maxnum //全局变量(学生总人数),gender //枚举变量
void dividelage(struct bks *head){ /*分页显示*/
struct bks *p1=head;
int i=0,a=0,c; //c为翻页选项
printf("分页显示全部学生的信息!\n");
while(c!=0){
printf("%-6s %-6s %-6s %-6s %-6s %-6s %-6s %-6s %-6s %-6s %-6s %-6s \n","学号","姓名","性别","专业","年级","班级","高数","英语","c语言","总成绩","班排","校排");
while(i<10){
if(p1->gender==0)printf("%-6d %-6s %-6s %-6s %-6d %-6d %-6d %-6d %-6d %-6d %-6d %-6d \n",p1->num,p1->name,"男",p1->professional,p1->grade,p1->Class,p1->advancemath,p1->English,p1->clanguage,p1->totalscore,p1->Classrank,p1->schoolrank);
else printf("%-6d %-6s %-6s %-6s %-6d %-6d %-6d %-6d %-6d %-6d %-6d %-6d \n",p1->num,p1->name,"女",p1->professional,p1->grade,p1->Class,p1->advancemath,p1->English,p1->clanguage,p1->totalscore,p1->Classrank,p1->schoolrank);
p1=p1->next;
a++;//为翻页变量
i++;//循环变量
if(a==maxnum)i=10; /*设置输出终点*/
}
printf("输入1为上一页,输入2为下一页,输入3为首页,输入4为最后一页,输入0为结束显示\n");
printf("请输入您的选择:");
scanf("%d",&c);
if(c==1){
if(a<=10){
p1=head;
a=0;
}
else{
if(a%10==0){ //在最后一页翻上一页时判断最后一页是否满十个人
a=a-20; //回到上一页开始位置
}
else{
a=a-10-a%10;
}
p1=head;
for(i=0;i
p1=p1->next;
}
}
}
else if(c==2){
if(a==maxnum){
if(a%10==0){
a=a-10;/*最后一页*/
}
else{
a=a-a%10;
}
p1=head;
for(i=0;i
p1=p1->next;
}
}
}
else if(c==3){
a=0;
p1=head;
}
else if(c==4){
if(maxnum%10==0){
a=maxnum-10; //最后一页
}
else{
a=maxnum-maxnum%10;
}
p1=head;
for(i=0;i
p1=p1->next;
}
}
i=0;
}
}

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