C语言编辑,在运行程序时部分函数的输出内容闪现,不停留。而且闪现结束还会返回上一步选择内容,具体代码如下


int  main(){    int n,w=1;    do    {        system("cls");        puts("\n\n\t\t*********************MENU***********************\n\n");        puts("\t\t\t\t1.以管理员身份登录(password 1)\n");        puts("\t\t\t\t2.以学生身份登录\n");        puts("\t\t\t\t3.关于\n");        puts("\t\t\t\t4.帮助\n");        puts("\t\t\t\t5.退出");        puts("\n\n\t\t************************************************\n");        printf("Chiose your number(1-5):");        scanf("%d",&n);        switch(n)        {            case 1:Mangers();break;  //case为语句1            case 2:Students();break;            case 3:About();break;            case 4:Help();break;            case 5:w=0;break;            default:;   //语句n+1        }    }while(w==1);    return 0;}

```
void Help()

{

printf("本程序为大学生选课系统,分为管理员界面和学生界面。\n");

printf("在管理员界面:需要密码登录,登录完成后可以对课程信息进行管理如(浏览、查询、添加、删除)。\n");
printf("在学生界面:直接进入后可以浏览课程、查询课程信息、选择选修课程、浏览学生自己选择的选修课程、删除错选的课程。\n");
printf("在查询课程的功能上可以从课程名称、课程编号等不同的课程性质进行课程的查询\n");

}```

应该是因为do-while循环里面的system("cls")这行代码把先前的屏幕信息清除了的原因,去除此行代码即可,修改如下:

#include <stdio.h>
#include <stdlib.h>
void Help()

{

    printf("本程序为大学生选课系统,分为管理员界面和学生界面。\n");
    
    printf("在管理员界面:需要密码登录,登录完成后可以对课程信息进行管理如(浏览、查询、添加、删除)。\n");
    printf("在学生界面:直接进入后可以浏览课程、查询课程信息、选择选修课程、浏览学生自己选择的选修课程、删除错选的课程。\n");
    printf("在查询课程的功能上可以从课程名称、课程编号等不同的课程性质进行课程的查询\n");
}

void Mangers(){
    printf("管理员操作!\n");
}

void Students()  {
    printf("学生操作!\n"); 
} 

void About(){
    printf("关于页面!\n");
}

int  main(){
    int n,w=1;    
    do  {        
        //system("cls");        
        puts("\n\n\t\t*********************MENU***********************\n\n");        
        puts("\t\t\t\t1.以管理员身份登录(password 1)\n");        
        puts("\t\t\t\t2.以学生身份登录\n");        
        puts("\t\t\t\t3.关于\n");        
        puts("\t\t\t\t4.帮助\n");        
        puts("\t\t\t\t5.退出");        
        puts("\n\n\t\t************************************************\n");        
        printf("Chiose your number(1-5):");       
         scanf("%d",&n);        
         switch(n)        
         {            
            case 1:Mangers();break;  //case为语句1            
            case 2:Students();break;           
            case 3:About();break;            
            case 4:Help();break;            
            case 5:w=0;break;            
            default:;   //语句n+1        
        }    
    }while(w==1);    
    
    return 0;
}


img