范文无忧网范文学习范文大全

用c语言做一个学生成绩管理系统

02月16日 编辑 fanwen51.com

[用C语言编写一个计算薪水的程序]/*工资计算程序*/ #include main() { float originWage; /*应发工资*/ float realWage; /*实发工资*/ float tax; /*所缴税款*/ int i,hour,amount,money; printf("请选择工资种...+阅读

/* 学生成绩管理程序 编制一个统计学生考试分数的管理程序。设学生成绩已以一个学生一个记录的形式存储在文件中,每位学生记录包含的信息有:姓名,学号和各门功课的成绩。程序具有以下几项功能:求出各门课程的总分,平均分,按姓名,按学号寻找其记录并显示,浏览全部学生成绩和按总分由高到低显示学生信息等。*/#include#define SWN 3 /* 课程数 */#define NAMELEN 20 /* 姓名最大字符数 */#define CODELEN 10 /* 学号最大字符数 */#define FNAMELEN 80 /* 文件名最大字符数 */#define BUFLEN 80 /* 缓冲区最大字符数 *//* 课程名称表 */ char schoolwork[SWN][NAMELEN+1] = {"Chinese","Mathematic","English"}; struct record { char name[NAMELEN+1]; /* 姓名 */ char code[CODELEN+1]; /* 学号 */ int marks[SWN]; /* 各课程成绩 */ int total; /* 总分 */ }stu; struct node { char name[NAMELEN+1]; /* 姓名 */ char code[CODELEN+1]; /* 学号 */ int marks[SWN]; /* 各课程成绩 */ int total; /* 总分 */ struct node *next; /* 后续表元指针 */ }*head; /* 链表首指针 */ int total[SWN]; /* 各课程总分 */ FILE *stfpt; /* 文件指针 */ char stuf[FNAMELEN]; /* 文件名 *//* 从指定文件读入一个记录 */ int readrecord(FILE *fpt,struct record *rpt) { char buf[BUFLEN]; int i; if(fscanf(fpt,"%s",buf)!=1) return 0; /* 文件结束 */ strncpy(rpt->name,buf,NAMELEN); fscanf(fpt,"%s",buf); strncpy(rpt->code,buf,CODELEN); for(i=0;imarks[i]); for(rpt->total=0,i=0;itotal+=rpt->marks[i]; return 1; }/* 对指定文件写入一个记录 */ writerecord(FILE *fpt,struct record *rpt) { int i; fprintf(fpt,"%s\n",rpt->name); fprintf(fpt,"%s\n",rpt->code); for(i=0;imarks[i]); return ; }/* 显示学生记录 */ displaystu(struct record *rpt) { int i; printf("\nName : %s\n",rpt->name); printf("Code : %s\n",rpt->code); printf("Marks :\n"); for(i=0;imarks[i]); printf("Total : %4d\n",rpt->total); }/* 计算各单科总分 */ int totalmark(char *fname) { FILE *fp; struct record s; int count,i; if((fp=fopen(fname,"r"))==NULL) { printf("Can't open file %s.\n",fname); return 0; } for(i=0;inext; } if(v==h) h=p; else u->next=p; p->next=v; p=(struct node *)malloc(sizeof(struct node)); } free(p); fclose(fp); return h; }/* 顺序显示链表各表元 */ void displaylist(struct node *h) { while(h!=NULL) { displaystu((struct record *)h); printf("\n Press ENTER to continue...\n"); while(getchar()!='\n'); h=h->next; } return; }/* 按学生姓名查找学生记录 */ int retrievebyn(char *fname, char *key) { FILE *fp; int c; struct record s; if((fp=fopen(fname,"r"))==NULL) { printf("Can't open file %s.\n",fname); return 0; } c=0; while(readrecord(fp,&s)!=0) { if(strcmp(s.name,key)==0) { displaystu(&s); c++; } } fclose(fp); if(c==0) printf("The student %s is not in the file %s.\n",key,fname); return 1; }/* 按学生学号查找学生记录 */ int retrievebyc(char *fname, char *key) { FILE *fp; int c; struct record s; if((fp=fopen(fname,"r"))==NULL) { printf("Can't open file %s.\n",fname); return 0; } c=0; while(readrecord(fp,&s)!=0) { if(strcmp(s.code,key)==0) { displaystu(&s); c++; break; } } fclose(fp); if(c==0) printf("The student %s is not in the file %s.\n",key,fname); return 1; } main() { int i,j,n; char c; char buf[BUFLEN]; FILE *fp; struct record s; clrscr(); printf("Please input the students marks record file's name: "); scanf("%s",stuf); if((fp=fopen(stuf,"r"))==NULL) { printf("The file %s doesn't exit, do you want to creat it? (Y/N) ",stuf); getchar(); c=getchar(); if(c=='Y'||c=='y') { fp=fopen(stuf,"w"); printf("Please input the record number you want to write to the file: "); scanf("%d",&n); for(i=0;i

延伸阅读:

学生信息管理系统C语言怎么做跟别人问重复了,你们难道是一个老师教的啊? 网上很多类似的,你参考下:#include#includestruct student { char name[30]; float math; float chinese; float english; float ave...

用C语言编写一个学生信息管理系统#include "stdio.h" #include "stdlib.h" #include "string.h" #include "conio.h" jiemian(); struct student { char name[50]; char sex[5]; int age; char num[50]; float score...

利用C语言研制和开发一个学生管理系统/*Design By Shocksea(09110530,Softwave College)*/ #include#include#include#include#includestruct student//学生结构体 { char name[10]; char sex[2]; char date[10]...

用C编写一个程序学生信息管理系统#include#include#include#include#defineMax 1000usingnamespacestd;classstudent{private: char name[20]; int number; int grade;public: student(char*,int,int); char...

我想用c语言做一个日常收支统计系统想问下高手们具体怎么做啊1.首先要考虑的是日常收支统计系统需要哪些功能? 如系统的输入,输入收入和支出, 如系统的查询,按月查询,按填查询,查询一段时间的收入,支出 如删除某一段时间的记录。 如按照收入或...

用c语言设计这样的学生成绩统计系统!急#include#include#include#define MAX 1000/*定义学生成绩信息结构*/struct stu{ char id[8]; char name[8]; double Chinese; double Math; double English; double averag...

用C语言做一个学生成绩统计系统求帮忙源代码。可以给你。需要点时间。现在在上课。#includevoid main() { int Password =0,i=0,sum=0; clrscr(); printf("\n===请输入密码!====\n"); while(Password != 1234) { if(i>3) {...

c语言学生期末成绩统计#includeintmain(){ints[20];intsum,max,min,excellent,good,pass,fail;inti;sum=0;max=0;min=100;excellent=good=pass=fail=0;for(i=0;imax)max=s[i];if(s[i]=90)excellen...

怎样用C语言做一个简单的有倒计时功能的小程序using System; using System.Collections; using System.Timers; using System.Runtime.InteropServices; using System.Collections.Generic; using System.ComponentModel...

推荐阅读
图文推荐
栏目列表