C++学生成绩管理系统 第4页

  return 0;      

 }

     return 1;

}

 

/*-------------4-------------*/

int JY_XM(char *stu_XM)    /*检验姓名*/

{  int PD;

   char *p;

   p=stu_XM;

   while(*p!='\0')    /*姓名只能用中文*/

   { 

      PD=(int)*p;

      if(PD>0)

 {  puts("\t\t\t姓名只能用中文,请重新输入!\n");

    return 0;

  }

      else p++;     /*使指针加1,指向下一汉字*/

    }

   if(getchar()!='\n')    /*姓名长度不得大于5*/

 {    printf("\t\t\t姓名长度大于5!请重新输入!\n");

      do{}while(getchar()!='\n');

      return 0;      

 }

   return 1;     /*字符串全为汉字返回真*/

 

}

 

/*-------------5-------------*/

int JY_CJ(float stu_CJ)    /*学生成绩只能在0~100之间*/

{  

     if(stu_CJ<0||stu_CJ>100)

 {  printf("\t\t\t输入错误,成绩只能在0~100之间!\n");

    return 0;

  }

    return 1;

}

 

/*-------------6-------------*/

void CreatFile()     /*输入文件*/

{  FILE *fp;

   struct stuType stu,stu0={"","",};   /*stu0先赋值*/

   fp=fopen("stu.dat","wb+");    /*打开或创建一个二进制文件,打开时将原来的内容删除*/

   if(fp==NULL)

 {  printf("\t\t\t文件打开失败!\n\t\t\t按任意键返回...");

    getch();

    return;

  }

   else

   {   while(1)

 {   stu=stu0;

     do{  printf("\n\t\t\t请输入学号:");  /*输入学号并检验其正确性*/

   scanf("%10s",stu.NO);

        }while(!JY_NO(stu.NO,fp));

     if(strcmp(stu.NO,"#")==0)break;

     do{  printf("\n\t\t\t请输入姓名:");  /*输入姓名并检验其正确性*/

   scanf("%10s",stu.XM);

        }while(!JY_XM(stu.XM));

     do{  printf("\n\t\t\t请输入语文成绩:"); /*输入成绩并检验其正确性*/

   scanf("%f",&stu.CJ[0]);

        }while(!JY_CJ(stu.CJ[0]));

     do{  printf("\n\t\t\t请输入数学成绩:"); /*同上*/

上一页  [1] [2] [3] [4] [5] [6] [7] [8] 下一页

  • 上一篇文章:
  • 下一篇文章:
  • Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有