皮皮网

【医院质控系统源码】【源码阅读nacos】【cs通道源码】随机数点名系统源码_随机点名系统代码

2024-11-18 11:26:07 来源:apk源码反编译

1.跪求c语言上课随机点名程序设计

随机数点名系统源码_随机点名系统代码

跪求c语言上课随机点名程序设计

       #include<stdio.h>

       #include <stdlib.h>

       #include <time.h>

       #define  STU_NUM_MAX 4

       struct StudentInfo  // 学生信息结构

       {

         char name[];

         int stu_id;

       }stu[STU_NUM_MAX];

       void WriteData()  //写入学生信息

       {

        FILE *fp;

        int stu_num=4;

          

        for (int i=0;i<stu_num;i++)

        {

              printf("请输入第%d个学生的随机数点姓名:",i+1);

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

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

           scanf("%d",&stu[i].stu_id);

        }

        if ((fp=fopen("myfile.dat","ab"))==NULL)

        {

        printf("Can't open file\n");

        exit(1);

        }

        for (int j=0;j<stu_num;j++)

        {

        if(fwrite(&stu[j],sizeof(struct StudentInfo),1,fp)!=1)

         printf("Error writing file.\n");

        }

        fclose(fp);

       }

       void TeacherDM(int stuID) // 教师点名

       {

        FILE *fp;

        bool find_mark=false;

           

        printf("\n\t%s\t\t%s\n","学号","姓名"); 

        if((fp=fopen("myfile.dat","rb"))==NULL) 

        {

        printf("Can't open file\n");

        exit(1);

        }

           int i=0;

        do

        {

               fseek(fp,i*sizeof(struct StudentInfo),SEEK_SET);

        fread(&stu[i],sizeof(struct StudentInfo),1,fp); 

        if(stu[i].stu_id==stuID)

        {

        printf("\t%4d\t%s\n",stu[i].stu_id,stu[i].name);

        printf("\n\n\t请%s同学回答某某问题.\n",stu[i].name);

        find_mark=true;

        break;

        }

        i++;

        }while(!feof(fp));

        if(!find_mark) printf("\n\t\t未能找到学生号为:%d的记录!\n",stuID);

        fclose(fp);

       }

       void main(void)

       {

        int stuID[4]={ ,,,};

           //WriteData();

        srand((unsigned)time(NULL));//随机种子

           TeacherDM(stuID[rand()%(3-0+1)+0]);

       }

       运行效果截图:

       另外多说一句,你所说的公正性,是不是指被点名过的同学不会再次被随机点名到。如果是名系码随名系码医院质控系统源码这个意思,那么你可以通过数组来设置它,统源统代源码阅读nacos即把点名过的同学的学号或姓名保存到一维数组里,随机判断时只需循环检查下该同学是否已被点名过。这里就留给你做了。机点cs通道源码

随机数点家园7源码

随机数点家园7源码