• PUDN用户
    了解作者
  • Visual C++
    开发工具
  • 3KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • 1 积分
    下载积分
  • 1
    下载次数
  • 2016-03-19 21:15
    上传日期
随机点名系统 C语言基础编程 注释丰富 通俗易懂 适合作为课堂作业参考
dianming.zip
  • diandian.c
    15.2KB
内容介绍
/*************************************** 版权所有 严禁抄袭 ******************************************/ /*************************************** 作者:汪文刚 ******************************************/ /*************************************** 中国地质大学(武汉) ******************************************/ #include <stdio.h> #include <stdlib.h> #include <time.h> #include<windows.h> #define SIZE 57 /***************** 头文件 ****************/ int i,a; FILE*fp; struct student { int num; char name[20]; int t_time; int a_time; } std[SIZE] ; /***************** 结构体定义 ****************/ void main() /***************** 主函数开始 ****************/ { void main_menu(); char num[10],name[20],t_time[20],a_time[20]; if((fp=fopen("students.txt","r"))==NULL) { printf("\n ************************************************************************\n"); printf(" 你好!点名文件不存在,请将点名文件复制到同目录下后重试。 \n\a\a"); printf(" ************************************************************************\n\n "); exit (0); } /***************** 打开文本文件 ****************/ fscanf(fp,"%s%s%s%s",num,name,t_time,a_time); for(i=0;i<SIZE;i++) { fscanf(fp,"%d%s%d%d",&std[i].num,std[i].name,&std[i].t_time,&std[i].a_time); } fclose(fp); /***************** 将文本文件里的数据以数组的形式缓存起来 ****************/ main_menu(); /***************** 调用主菜单函数 ****************/ } void main_menu() /***************** 定义主菜单函数 ****************/ { void main_select(); printf(" \n"); printf(" ************************************************************************\n"); printf(" 欢迎使用随机点名系统 \n"); printf(" ************************************************************************\n"); printf(" *************** 1.开始点名 ***************\n"); printf(" *************** 2.点名统计 ***************\n"); printf(" *************** 3.统计归零 ***************\n"); printf(" *************** 4.安全退出 ***************\n"); printf(" ************************************************************************\n\n"); printf(" 请输入指令:"); /***************** 主菜单界面功能划分 ****************/ main_select(); /***************** 调用主选择函数 ****************/ } void option1() /***************** 定义第一选项函数 ****************/ { void select1(); srand((unsigned)time(NULL)); i=rand()%(SIZE+1); /***************** 创造随机数i ****************/ system("cls"); printf("\n ************************************************************************\n"); printf(" 随机点名结果 \n"); printf(" ************************************************************************\n"); printf(" *************** 学号:0%d ***************\n",std[i].num); printf(" *************** 姓名:%s\t ***************\n",std[i].name); printf(" *************** 已点次数:%d\t ***************\n",std[i].t_time); printf(" *************** 旷到次数:%d\t ***************\n",std[i].a_time); printf(" ************************************************************************\n"); printf(" 是否旷到: 1.是 2.否 \n"); printf(" ************************************************************************\n\n"); printf(" 请输入指令:"); select1(); /***************** 调用函数记录旷到情况 ****************/ } void option2() /***************** 定义第二选项函数 ****************/ { void select2(); system("cls"); printf("\n ************************************************************************\n"); printf(" 点名统计结果 \n"); printf(" ************************************************************************\n"); printf(" ***** 学号\t 姓名\t 被点次数\t旷到次数 *****\n"); printf(" ************************************************************************\n"); for(i=0;i<SIZE;i++) { printf(" ***** 0%d\t%s\t\t%d\t %d *****\n",std[i].num,std[i].name,std[i].t_time,std[i].a_time); } printf(" ************************************************************************\n"); printf(" 1.返回主菜单 2.导出数据 \n"); printf(" ************************************************************************\n"); printf(" 请输入指令:"); select2(); } void option3() /***************** 定义第三选项函数 ****************/ { void select3(); system("cls"); printf("\n\n\n\n\n\n ************************************************************************\n"); printf(" 确定将统计结果归零?归零后将不可恢复! \n\n\a"); printf(" 1.是 2.否 \n"); printf(" ************************************************************************\n"); printf(" 请输入指令:"); select3(); } void option4() /***************** 定义第一选项函数 ****************/ { FILE*f; if((f=fopen("students.txt","w"))==NULL) { system("cls"); printf("\n ************************************************************************\n"); printf(" 文件保存失败 建议关闭students.txt文件后重试 \n\a\a"); printf(" ************************************************************************\n\n\n\n\n "); } fprintf(f," 学号\t\t 姓名\t\t被点次数\t旷到次数\n"); for(i=0;i<SIZE;i++) fprintf(f,"0%d\t%s\t\t %d\t\t %d\n",std[i].num,std[i].name,std[i].t_time,std[i].a_time); fclose(f); /***************** 保存点名情况到文本文件中 ****************/ system("cls"); printf("\n\n\n\n\n\n\n\n\n ************************************************************************\n"); printf(" 数据已经自动保存,现在你可以安全地关闭该程序了! \n\a"); printf(" 欢迎下次使用该程序 \n"); printf(" Powered By Vinca \n"); printf(" ************************************************************************\n\n\n\n\n "); exit(0); } void main_select() { void option1(); void option2(); void option3(); void option4(); void error_select(); /***************** 选项函数声明 ****************/ char s; s=getchar(); switch (s) { case'1': option1(); break; case'2': option2(); break; case'3': option3(); break; case'4': option4(); break; default: { error_select(); main_select(); break; } } } void select1() /***************** 记录考勤情况 ****************/ { void select11(); char s; s=
评论
    相关推荐
    • 随机点名.rar
      简单地C语言随机点名程序,有效实现课堂随机点名程序,c语言学习的简单入门小程序
    • 学生点名系统设计.zip
      点名系统c语言写的,具备老师随机点名
    • 随机点名器设计.rar
      使用C语言,制作一个在命令行运行的点名程序,该程序运行时可指定班级的花名册文件,运行后在界面上显示随机抽取名字的过程,速度由快到慢,逐渐定格到某一个“幸运儿”上,程序结束。
    • 基于C语言随机点名器.zip
      使用C语言,制作一个在命令行运行的点名程序,该程序运行时可指定班级的花名册文件,运行后在界面上显示随机抽取名字的过程,速度由快到慢,逐渐定格到某一个“幸运儿”上,程序结束。 这是我第一个小项目,完全按照...
    • Proteus7.12.rar
      Proteus7.12完美破解版.rar电路仿真软件很好用可以仿真单片数字模拟电路
    • VHDL 的实例程序,共44个.rar
      经典VHDL 的实例程序,共44个!要下载的尽快
    • USBtoRS232Driver.rar
      USB转串口驱动程序,可以用在笔记本电脑上,方便的通过串口给单片机下载程序!
    • 模糊控制程序.rar
      模糊PID控制程序的源码,是作业,有讲解,
    • 串口编程源代码.rar
      这是本人最近几年所编写的串行通讯的代码集,可以供大家参考学习。
    • DELTA_PLC.rar
      台达PLC Modbus协议通信dll com控件