ython是一种计算机程序设计语言。你可能已经听说过很多种流行的编程语言,比如非常难学的C语言,非常流行的Java语言,适合初学者的Basic语言,适合网页编程的JavaScript语言等等。
那Python是一种什么语言?
首先,我们普及一下编程语言的基础知识。用任何编程语言来开发程序,都是为了让计算机干活,比如下载一个MP3,编写一个文档等等,而计算机干活的CPU只认识机器指令,所以,尽管不同的编程语言差异极大,最后都得“翻译”成CPU可以执行的机器指令。而不同的编程语言,干同一个活,编写的代码量,差距也很大。
这个是我以前做个的挺好的系统,你可以改改,很简单。我也给你邮箱发了一份,注意查收,一定给我分啊!!!
#include <stdlibh>
#include <stdioh>
#include <stringh>
#define MAXN 35
#define MAX_NAME 256
typedef struct student //学生信息
{
int no;
char name[MAX_NAME];
double english;
double math;
double Programming;
double mark_ave;
double mark_tot;
} STUDENT;
/-----------输入信息子程序---------/
void input(STUDENT data, int len)
{
int no;
putchar('\n');
printf("%s\n", "请输入新的记录,如果需要退出当前菜单请输入0");
printf("%s\n", "格式:\n学号\n");
printf("%s\n", "姓名 英语 数学 C语言");
putchar('\n');
scanf("%d", &no);
while(no != 0) {
data[len]no = no;
scanf("%s %lf %lf %lf", data[len]name, &data[len]english, &data[len]math,&data[len]Programming);
data[len]mark_ave=(data[len]english+data[len]math+data[len]Programming)/30;
data[len]mark_tot=data[len]english+data[len]math+data[len]Programming;
(len)++;
scanf("%d", &no);
}
}
/---------------输出信息子程序---------------/
void output(STUDENT data, int len)
{
int i;
system("cls");
printf("%8s", "学号");
printf("%8s", "姓名");
printf("%8s", "英语");
printf("%8s", "数学");
printf("%10s", "C语言");
printf("%12s", "平均分");
printf("%10s", "总分");
putchar('\n');
for (i =0; i < 80; i++)
putchar('=');
putchar('\n');
for (i = 0; i< len; i++)
{
printf("%8d", data[i]no);
printf("%8s", data[i]name);
printf("%81lf", data[i]english);
printf("%81lf", data[i]math);
printf("%101lf", data[i]Programming);
printf("%121lf", data[i]mark_ave);
printf("%101lf", data[i]mark_tot);
putchar('\n');
}
for (i =0; i < 80; i++)
putchar('=');
putchar('\n');
printf("按回车键继续");
getchar();
getchar();
}
/--------------------搜索子程序-----------------------/
void find(STUDENT data, int len)
{
int find_no, result ;
int i;
lab: result=0;
printf("%s\n", "请输入需要查找的学生的学号,退出当前菜单请输入 -1");
scanf("%d", &find_no);
if (find_no == -1) return; /exit the fine sub program/
while( data[result]no != find_no && result < len) result ++;
if (result >= len ) {
printf("%s\n", "未查询到相关信息");
goto lab;
}
else {
system("cls");
printf("%s\n", "查询信息如下:");
for (i =0; i < 80; i++)
putchar('=');
putchar('\n');
printf("%8s", "学号");
printf("%8s", "姓名");
printf("%8s", "英语");
printf("%8s", "数学");
printf("%10s", "C语言");
printf("%12s", "平均分");
printf("%10s", "总分");
putchar('\n');
printf("%8d", data[result]no);
printf("%8s", data[result]name);
printf("%81lf", data[result]english);
printf("%81lf", data[result]math);
printf("%101lf", data[result]Programming);
printf("%121lf", data[result]mark_ave);
printf("%101lf", data[result]mark_tot);
putchar('\n');
for (i =0; i < 80; i++)
putchar('=');
putchar('\n');
goto lab;
}
}
/-----------------插入子程序-------------/
void insert(STUDENT data, int len)
{
int no, pos;
double english, math, Programming, mark_ave, mark_tot;
int i;
char name[MAX_NAME];
lab: printf("%s\n", "输入新的记录,退出当前菜单请输入-1");
printf("%s\n", "格式:学号");
printf("%s\n", " 姓名 英语 数学 C语言");
scanf("%d", &no);
if (no == -1) return;
data[len]no = no;
scanf("%s %lf %lf %lf", name, &english, &math, &Programming);
mark_ave=(english+math+Programming)/30;
mark_tot=english+math+Programming;
pos = 0;
while ((data[pos]mark_ave < mark_ave) && (pos < len) )
pos ++;
for (i = len-1; i >= pos; i--)
data[i+1] = data[i];
data[pos]no = no;
strcpy(data[pos]name, name);
data[pos]english = english;
data[pos]math = math;
data[pos]Programming = Programming;
data[pos]mark_ave = mark_ave;
data[pos]mark_tot = mark_tot;
(len)++;
goto lab;
}
/-------------删除子程序--------------/
void delete_item(STUDENT data, int len)
{
int no, i, pos;
lab: pos=0;
printf("%s\n", "输入需要删除的学生的学号,退出当前菜单请输入-1");
scanf("%d", &no);
if (no == -1) return;
while( (data[pos]no != no) && (pos < len) ) pos = pos +1;
if (pos >= len) {
printf("%s\n", "未找到需要删除的学生");
goto lab;
}
else {
for (i = pos+1;i < len; i++)
data[i-1] = data[i];
len = len -1;
if (len == 0) {
printf("%s\n", "没有任何记录,请按回车键返回");
getchar();
getchar();
return;
}
goto lab;
}
}
/---------------显示信息子程序------------/
void paint()
{
int i;
system("cls");
printf(" 学生成绩信息管理系统\n");
printf(" 西安石油大学 ------张瑞\n");
for (i = 0; i < 80; i++)
putchar('=');
putchar('\n');
printf(" 1 输入信息\n");
printf(" 2 输出信息\n");
printf(" 3 按学号查找\n");
printf(" 4 插入\n");
printf(" 5 按学号删除\n");
printf(" 0 退出\n");
for (i = 0; i<= 79; i++)
putchar('=');
putchar('\n');
printf("%s\n", "请输入各 *** 作对应的序号:");
}
/-----------主程序--------------/
void print(STUDENT data, int len){
int i = 0;
FILE fp;
fp =fopen("f:\\学生信息表txt","w+");
fprintf(fp, " 学生成绩信息表\n");
fprintf(fp, " 学号");
fprintf(fp, " 姓名");
fprintf(fp, " 英语");
fprintf(fp, " 数学");
fprintf(fp, " c语言");
fprintf(fp, " 平均分");
fprintf(fp, " 总分\n");
for(i = 0;i<len;i++){
fprintf(fp,"%8d",data[i]no);
fprintf(fp,"%8s",data[i]name);
fprintf(fp,"%81lf",data[i]english);
fprintf(fp,"%81lf",data[i]math);
fprintf(fp,"%101lf",data[i]Programming);
fprintf(fp,"%121lf",data[i]mark_ave);
fprintf(fp,"%101lf\n",data[i]mark_tot);
}
fclose(fp);
}
void main()
{
STUDENT data[MAXN];
int len = 0;
char ctrl_ch;
paint();
scanf("%c", &ctrl_ch);
while (ctrl_ch != '0')
{
switch(ctrl_ch)
{
case '1':
input(data, &len);
break;
case '2':
print(data,&len);
output(data, len);
break;
case '3':
find(data, len);
break;
case '4':
insert(data, &len);
break;
case '5':
delete_item(data, &len);
break;
default:
if (ctrl_ch != '\n') printf("%s\n", "输入错误!");
break;
}
if (ctrl_ch != '\n') paint();
scanf("%c", &ctrl_ch);
}
}
这是我做的,你看是否满意?可能有点大,但也没办法呀,你的题目也比较大,呵呵!所以,如果满意,多给我追加点分!
#include "stdioh"
#include "stdlibh"
#include "stringh"
typedef struct course
{
char number[15],name[25];
int kind,time,lessontime,practicetime,credit,term;
}type;
FILE fp1;
void overview(); //浏览函数,负责浏览整个课程信息
void seek(); //查询函数,负责查询课程信息
void choose_course();//选课函数,负责让用户选课
void out(type temp);
void input();
int main()
{
int n,i;
if((fp1=fopen("course_informationtxt","wb"))==NULL)
{printf("创建文件失败!\n");exit(0);}
printf("请输入要存储的课程数目:\n");
scanf("%d",&n);
printf("开始创建文件,请输入课程信息:\n\n");
for(i=0;i<n;i++)
{
printf("请输入第%d门课程的信息:\n",i+1);
input();
printf("\n");
}
printf("如想浏览整个课程信息,请输入1;如想查询课程信息,请输入2; 如想进行选课,请输入3;如想结束选修课系统,请输入0!\n");
while((scanf("%d",&n))!=EOF)
{
if(n==1)
overview();
if(n==2)
seek();
if(n==3)
choose_course();
if(n==0)
exit(0);
printf("\n\n如想继续 *** 作,只要按规则输入你要进行的 *** 作即可!\n规则:如想浏览整个课程信息,请输入1;如想查询课程信息,请输入2;如想进行选课,请输入3!\n");
}
printf("欢迎您使用此程序进行选课,谢谢!\n");
fclose(fp1);
return 0;
}
void input()
{
course c_a;
printf("请输入课程编码: ");
scanf("%s",c_anumber);
printf("请输入课程名: ");
scanf("%s",c_aname);
printf("请输入课程性质:限选课,请输入1;选修课,请输入2;必修课,请输入3! ");
scanf("%d",&c_aname);
printf("请输入课程总学时: ");
scanf("%d",&c_atime);
printf("请输入课程授课时间: ");
scanf("%d",&c_alessontime);
printf("请输入课程实验或实践时间: ");
scanf("%d",&c_apracticetime);
printf("请输入课程学分: ");
scanf("%d",&c_acredit);
printf("请输入课程所在的学期,比如第二学期,就输入2即可。");
scanf("%d",&c_aterm);
fwrite(&c_a,sizeof(struct course),1,fp1);//将一个结构体元素写入文件中
}
void out(type temp)
{
printf("课程代码: %s\n课程名: %s\n",tempnumber,tempname);
printf("课程名: %s\n",tempname);
if(tempkind==1)
printf("课程性质: Limited optional course\n");
else if(tempkind==2)
printf("课程性质: Optional course\n");
else if(tempkind==3)
printf("课程性质: Required Courses\n");
else
printf("该编码系统不认识,即无对应的课程性质存在!\n");
printf("课程总学时: %d\n课程授课学时: %d\n实验或上机学时: %d\n学分: %d\n课程开课学期: %d\n\n",temptime,templessontime,temppracticetime,tempcredit,tempterm);
}
void overview()
{
rewind(fp1);
course temp;
printf("整个课程信息如下:\n");
while((fread(&temp,sizeof(type),1,fp1))!=0)
out(temp);
}
void seek()
{
int judge,credit=0,kind=0;
char a='N';
course temp;
printf("如想按学分查询,请输入1;如想按课程性质,请输入2:\n");
scanf("%d",&judge);
rewind(fp1); //将文件指针位置置为开头
if(judge==1)
{
printf("请输入要查询的学分:\n");
scanf("%d",&credit);
while((fread(&temp,sizeof(type),1,fp1))!=0)
if(credit==tempcredit)
out(temp);
}
else if(judge==2)
{
printf("请输入你要查找课程的性质(限选课,请输入1;选修课,请输入2;必修课,请输入3):");
scanf("%d",&kind);
while((fread(&temp,sizeof(type),1,fp1))!=0)
if(tempkind==kind)
out(temp);
}
else
printf("不好意思,无此类查询!\n");
}
void choose_course()
{
rewind(fp1);
course temp;
int judge=1,n=0,time=0,credit=0;
char choose[20][20];
r1: printf("请开始填写课程编号进行选课:\n");
while(judge==1)
{
printf("请输入你所选课程的标号: ");
scanf("%s",choose[n]);
n++;
printf("如想继续选课,请输入1;如想提交,请输入0!\n");
scanf("%d",&judge);
}
while((fread(&temp,sizeof(type),1,fp1))!=0)
{
for(int i=0;i<n;i++)
if(strcmp(tempnumber,choose[i])==0)
{time=time+temptime;credit=tempcredit;break;}
}
if(time<270||credit<40)
goto r1;
printf("你所选的课为:\n");
while((fread(&temp,sizeof(type),1,fp1))!=0)
{
for(int i=0;i<n;i++)
if(strcmp(tempnumber,choose[i])==0)
{out(temp);break;}
}
}
怎么可能会有现成的代码给你,这个只能自己去写了。其实很简单,给你个思路:
1 建立选课配置文件,字段大致分为"课程ID、教师姓名、性别、院系、职称、课程名称、学分
"等等。这个用本地文件配置,方便管理员配置,用于主程序读取选课信息。
2 建立学员选课信息数据库(数据库或者本地文件存贮都可以),主要存贮每个学员的实际选课信息,提供主程序读取和修改。
3 创建系统主程序。其功能包括:
31 系统启动时读取选课配置文件(本地配置文件)
32 系统启动时读取每个学员的选课信息(数据库或者本地文件)
33 系统启动完成后,提供按学号查询,编辑学员选课信息,打印学员选课信息等等功能。
其实很简单。。。
以上就是关于如何使用Python选课系统开发程序全部的内容,包括:如何使用Python选课系统开发程序、C语言求助 选修课需要做一个程序 叫 学生成绩管理系统 需要有 菜单 输入 输出 删除 计算 查找 排序 插入、C语言程序设计 (学生选修课程设计)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)