C+课程设计报告代码

合集下载

C语言课程设计报告+源代码(成绩管理系统)

C语言课程设计报告+源代码(成绩管理系统)

课程设计报告(专科)课程:C语言程序设计学号:0810720070姓名:班级:08级计算机应用师范专科班教师:时间:2009.6.8~2009.6.19计算机科学与技术系附录:源程序代码#include"stdio.h"#include"string.h"#include "conio.h"void input(struct class_list cla[6]);void total(struct class_list cla[6]);void search(struct class_list cla[6]);void modify(struct class_list cla[6]);void display(struct class_list cla[6]);int i,j,a=0,b[11]; //定义为全局变量struct student{char sex[5];char name[20];int num;double score;};struct class_list{struct student stu[50];}cla[10];int main(){int choice;printf("------------欢迎使用C语言成绩管理系统------------\n\n\n");do{printf("1.录入成绩2.统计成绩3.成绩查询4.修改学生信息5.显示成绩单0.退出\n");printf("请输入你的选择:");scanf("%d",&choice);if(choice<0||choice>5){printf("无效选择,请重选:");scanf("%d",&choice);}printf("\n");switch(choice){case 1:printf("只能使用一次此功能,请不要重复使用!!\n");input(cla); //成绩录入break;case 2:total(cla); //统计成绩break;case 3:search(cla); //成绩查询break;case 4:modify(cla); //修改学生信息break;case 5:display(cla); //显示成绩单break;case 0:break;}}while(choice!=0);printf("谢谢使用!\n");return 0;}void input(struct class_list cla[]) //成绩录入{int date; //学期printf("请输入学期:");scanf("%d",&date);printf("请输入班级的个数:");scanf("%d",&a);for(i=0;i<a;i++){printf("class:%d\n",i+1); //输出班级号printf("请输入学生的个数:");scanf("%d",&b[i]);printf("\n学号不能重复\n");for(j=0;j<b[i];j++)//输入学生的信息{printf("学号:");scanf("%d",&cla[i].stu[j].num);printf("姓名:");scanf("%s",cla[i].stu[j].name);printf("性别:");scanf("%s",cla[i].stu[j].sex);printf("C语言成绩:");scanf("%lf" ,&cla[i].stu[j].score);}if(j>=b[i])printf("人数已满\n");}if(i>=a)printf("班级已满\n\n");}void total(struct class_list cla[]){double sum,average;for(i=0;i<a;i++){sum=0;average=0;for(j=0;j<b[i];j++)sum=sum+cla[i].stu[j].score;average=sum/b[i];printf("班级:%d 总分:%.2lf 平均分:%.2lf\n",i+1,sum,average);}}void search(struct class_list cla[]){int choice2,num2,flag;char name2[20];do{printf("1.按姓名查找2.按学号查找3.查找学生不及格名单0.退出\n");printf("请输入你的选择:");scanf("%d",&choice2);switch(choice2){case 1:flag=0;printf("请输入你要查找的学生姓名:");scanf("%s",name2);for(i=0;i<a;i++)for(j=0;j<b[i];j++)if(strcmp(name2,cla[i].stu[j].name)==0){printf("班级:%d 学号:%d 姓名:%s 性别:%s c语言成绩:%.2f\n",i+1,cla[i].stu[j].num,cla[i].stu[j].name, cla[i].stu[j].sex,cla[i].stu[j].score);flag=1;}if(flag==0)printf("没有此学生信息!\n");break;case 2:flag=0;printf("请输入你要查找的学生学号:");scanf("%d",&num2);for(i=0;i<a;i++)for(j=0;j<b[i];j++)if(num2==cla[i].stu[j].num){printf("班级:%d 学号:%d 姓名:%s 性别:%s C语言成绩:%.2lf\n",i+1,cla[i].stu[j].num,cla[i].stu[j].name, cla[i].stu[j].sex,cla[i].stu[j].score);flag=1;}if(flag==0)printf("没有此学生信息!\n");break;case 3:flag=0;for(i=0;i<a;i++)for(j=0;j<b[i];j++){if(cla[i].stu[j].score<60)printf("班级:%d 学号:%d 姓名:%s 性别:%s c语言成绩:%.2lf\n",i+1,cla[i].stu[j].num,cla[i].stu[j].name,cla[i].stu[j].sex,cla[i].stu[j].score);flag=1;}if(flag==0)printf("没有学生不及格!\n");break;case 0:break;}}while(choice2!=0);}void modify(struct class_list cla[]) //修改学生信息{int choice2,num2,num3;int k,p,flag;float score2;char name2[20],name3[20],ch;if(a==0){printf("无班级,无人数,无法修改!\n");return ;}do{printf("1.增加学生信息 2.删除学生信息 3.修改姓名 4.修改学号 5.修改C语言成绩 6.退出\n");printf("请输入你的选择:");scanf("%d",&choice2);if(choice2<1||choice2>9){printf("无效选择,请重选:");scanf("%d",&choice2);}switch(choice2){case 1: //插入学生printf("请输入想插入的班级号1~10:");scanf("%d",&p);if(p>a){printf("无此班级,请重新输入:");printf("班级数为1~%d:",a);scanf("%d",&p);}b[p-1]++; //人数增加printf("请输入学生信息:\n");printf("学号:");scanf("%d",&cla[p-1].stu[b[p]].num);printf("姓名:");scanf("%s",cla[p-1].stu[b[p]].name);printf("c语言:");scanf("%lf",&cla[p-1].stu[b[p]].score);printf("性别:");scanf("%s",&cla[p-1].stu[b[p]].sex);printf("班级:%d 学号:%d 姓名:%s 性别:%s C语言成绩:%.2lf \n\n",p,cla[p-1].stu[b[p]].num,cla[p-1].stu[b[p]].name,cla[p-1].stu[b[p]].sex,cla[p-1].stu[b[p]].score);break;case 2: //删除学生printf("请输入要删除的学生姓名:");scanf("%s",name3);for(i=0;i<a;i++)for(j=0;j<b[i];j++){if(strcmp(name3,cla[i].stu[j].name)==0){flag=1;printf("班级:%d 学号:%d 姓名:%s 性别:%s c语言成绩:%.2\nf",i+1,cla[i].stu[j].num,cla[i].stu[j].name,cla[i].stu[j].sex,cla[i].stu[j].score);printf("你确认要删除此学生吗?<y/n> ");ch=getch();if(ch=='y'){for(k=j;k<b[i];k++){strcpy(cla[i].stu[k].name,cla[i].stu[k+1].name);strcpy(cla[i].stu[k].sex,cla[i].stu[k+1].sex);cla[i].stu[k].score=cla[i].stu[k+1].score;cla[i].stu[k].num=cla[i].stu[k+1].num;b[i]--;}printf("你已成功删除!\n");}else {flag=1;printf("删除未完成!\n");}if(b[i]==0)printf("班级%d为空!\n\n",i+1);}if(flag==0)printf("没有此学生!\n");}break;case 3: //修改的学生姓名flag=0;printf("请输入要修改的学生姓名:");scanf("%s",name2);for(i=0;i<a;i++){for(j=0;j<b[i];j++){if(strcmp(cla[i].stu[j].name,name2)==0){printf("请输入修改后的学生姓名:");scanf("%s",name3);strcpy(cla[i].stu[j].name,name3);flag=1;}}}if(flag==0)printf("无此人信息\n");break;case 4: //修改的学生学号flag=0;printf("请输入要修改的学生学号:");scanf("%d",&num2);for(i=0;i<a;i++){for(j=0;j<b[i];j++){if(cla[i].stu[j].num==num2){printf("请输入修改后的学生学号:");scanf("%d",&num3);cla[i].stu[j].num=num3;flag=1;}}}if(flag==0)printf("无此人信息\n");break;case 5: //修改学生的c语言成绩flag=0;printf("请输入要修改的C语言成绩的学生姓名:");scanf("%s",name2);for(i=0;i<a;i++){for(j=0;j<b[i];j++){if(strcmp(cla[i].stu[j].name,name2)==0){printf("请输入修改后的C语言成绩:");scanf("%f",&score2);cla[i].stu[j].score=score2;flag=1;}}}if(flag==0)printf("无此人信息\n");break;case 6:printf("\n");break;}}while(choice2!=6);}void display(struct class_list cla[]) //输出成绩单{if(a==0){printf("无班级,无人数,无法输出\n");return ;}for(i=0;i<a;i++){printf("班级:%d\n",i+1);for(j=0;j<b[i];j++)printf("学号:%d 姓名:%s 性别:%s c语言成绩:%.2lf\n",cla[i].stu[j].num,cla[i].stu[j].name,cla[i].stu[j].sex,cla[i].stu[j].score);}printf("\n");}。

C#课程设计报告(完整版源代码)

C#课程设计报告(完整版源代码)

西安科技大学《C#语言程序设计》课程设计报告题目简单记事本的设计院、系(部)计算机科学与技术学院专业及班级计算机网络技术姓名牛德洋日期2013/1/171 题目要求使用C#语言设计一个Windows自带记事本,软件界面美观大方,操作简洁易用,功能完备可靠,必须上机调试通过。

程序中应有不少于100~300行的自行编写的代码,代码需书写详细注释。

2 功能需求实现记事本软件的基本功能,具有文本文件的新建、打开、保存功能,文字的全选、剪切、复制、粘贴、删除、撤销、查找、替换功能,字体类型、格式的设置、显示当前日期与时间的功能,并在此记事本程序基础上增加设置字体颜色,添加状态栏功能。

3 总体设计4 详细设计Program.cs:代码如下using System;using System.Collections.Generic;using System.Linq;using System.Windows.Forms;namespace note{static class Program{/// <summary>/// 应用程序的主入口点。

/// </summary>[STAThread]static void Main(){Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);Application.Run(new Form1());}}}Form1.Designer.cs代码如下:namespace note{partial class Form1{/// 清理所有正在使用的资源。

/// <param name="disposing">如果应释放托管资源,为 true;否则为false。

</param>protected override void Dispose(bool disposing){if (disposing && (components != null)){components.Dispose();}base.Dispose(disposing);}#region Windows 窗体设计器生成的代码/// 设计器支持所需的方法 - 不要/// 使用代码编辑器修改此方法的内容。

C语言课程设计代码

C语言课程设计代码

#include"stdio.h"#include<stdlib.h>#include<malloc.h>#define LEN sizeof(struct course)struct course{int cID;char name[50];float credit;int semester;struct course *next;};void main(){int n=0;struct course *head=NULL;void insert(struct course **head,struct course *cou);void Print(struct course **head,int*n);void Modify(struct course **head,int*n);void Require(struct course **head);void Creat(struct course **head,int*n);void Delete(struct course **head,int*n);void Fun(struct course **head,int*n);Fun(&head,&n);}void insert(struct course **head,struct course *cou){struct course *p0,*p1,*p2;p2=p1=*head;p0=cou;if(*head){while((p0->semester>p1->semester)&&(p1->next)){p2=p1;p1=p1->next;}if(p0->semester<p1->semester){if(*head==p1)*head=p0;else p2->next=p0;p0->next=p1;}else{if(p0->semester==p1->semester){while((p0->cID>p1->cID)&&(p1->next)&&(p0->semester==p1->semes ter)){p2=p1;p1=p1->next;}if(p0->semester!=p1->semester){p2->next=p0;p0->next=p1;}else{if(p0->cID<=p1->cID){if(*head==p1)*head=p0;else p2->next=p0;p0->next=p1;}else{p1->next=p0;p0->next=NULL;}}}else{p1->next=p0;p0->next=NULL;}}}else{*head=p0;p0->next=NULL;}}void Print(struct course **head,int*n){struct course *p;p=*head;if(*head){if(*n==1)printf("\nThis %d record is:\n",*n);else printf("\nThese %d records are:\n",*n);printf("semester cID name credit\n");do{printf("%-10d%-10d%-18s%-12.1f\n",p->semester,p->cID,p->name,p->credit);p=p->next;}while(p!=NULL);}else printf("\nList null! \n");}void Modify(struct course **head,int*n){struct course *p,*p2;int cID;if(*head){Print(head,n);while(1){printf("\nPlease input the cID which you want to modify:");scanf("%d",&cID);p2=p=*head;while(p->next&&(cID!=p->cID)){p2=p;p=p->next;}if(cID==p->cID){printf("Please input the new cID(1~60):");scanf("%d",&p->cID);while(p->cID<0||p->cID>60){printf("\nError!");printf("\nPlease input the new cID(1~60):");scanf("%d",&p->cID);}printf("Please input the new semester(1~8):");scanf("%d",&p->semester);while(p->semester<0||p->semester>8){printf("\nError!");printf("\nPlease input the new semester(1~8):");scanf("%d",&p->semester);}printf("Please input the new credit:");scanf("%f",&p->credit);printf("Please input the new name:");scanf("%s",p->name);if(p==*head)*head=p->next;else p2->next=p->next;insert(head,p);break;}else printf("%d not been found! \n",cID);}}else{printf("\nList null! \n");}}void Require(struct course **head){struct course *p;float sum=0;int sem,i=0;printf("\nPlease input the semester which is required:");scanf("%d",&sem);p=*head;while(p){if(sem==p->semester){i++;if(i==1)printf("\nsemester cID name credit\n");printf("%-10d%-10d%-18s%-12.1f\n",p->semester,p->cID,p->name,p->credit);sum=sum+p->credit;}p=p->next;}printf("The sum of credit in this term is:%.1f\n",sum); }void Creat(struct course **head,int*n){struct course *p1;while(1){p1=(struct course *)malloc(LEN);printf("Please input the cID(1~60):");scanf("%d",&p1->cID);while(p1->cID<0||p1->cID>60){printf("\nError!");printf("\nPlease input the cID(1~60):");scanf("%d",&p1->cID);}if(p1->cID==0) break;printf("Please input the semester(1~8):");scanf("%d",&p1->semester);while(p1->semester<0||p1->semester>8){printf("\nError!");printf("\nPlease input the semester(1~8):");scanf("%d",&p1->semester);}printf("Please input the credit:");scanf("%f",&p1->credit);printf("Please input the name:");scanf("%s",p1->name);insert(head,p1);*n=*n+1;printf("\nYou can continue until the cID is \"0\"! \n");}Print(head,n);}void Delete(struct course **head,int*n){struct course *p1,*p2;int cID;Print(head,n);if(*head){printf("Please input the cID of the course which you want to delete:");scanf("%d",&cID);p1=*head;while(cID!=p1->cID&&p1->next!=NULL){p2=p1;p1=p1->next;}if(cID==p1->cID){if(p1==*head)*head=p1->next;else p2->next=p1->next;printf("Have delete cID:%d\n",cID);*n=*n-1;}else printf("%d not been found! \n",cID);}}void Fun(struct course **head,int*n){char num;while(1){system("cls");puts("**************** Main Menu ******************");puts("* 1. Add Records 2. Print Records *");puts("* 3. Delete Records 4. Modify Records *");puts("* 5. Require Records 6. Exit *");printf("Please input your choice: ");scanf("%d",&num);switch(num){case 1:Creat(head,n);break;case 2:Print(head,n);break;case 3:Delete(head,n);break;case 4:Modify(head,n);break;case 5:Require(head);break;case 6:exit(0); break;default: break;}printf("\nPress \"Enter\" to continue!");getchar();getchar();}}。

C#学生管理系统课程设计报告及代码

C#学生管理系统课程设计报告及代码

课程设计(大作业)报告课程名称:软件代码开发技术(c#)设计题目:设计一个学生管理系统院系:信息技术学院班级:08级本科4班设计者:王辉学号:***********指导教师:***设计时间:2011.6.1~2011.6.10昆明学院昆明学院课程设计(大作业)任务书课程设计(大作业)报告一、题目分析1.背景分析●编写目的本需求的编写目的在于研究学籍管理系统软件的开发途径和应用方法。

以及明确所要开发的软件应具有的功能、性能与界面,是系统分析人员及软件开发人员能清楚的了解用户的需求,并再次基础上进一步提出概要设计说明书和完成后续设计与开发工作。

●项目背景近年来随着高校的扩招,需要处理的学生信息日趋加大,不仅花费大量的教师资源,处理的效果还十分低下。

为了提高学生管理的管理水平,优化资源,尽可能的降低管理成本,成为学生管理的新课题。

学生管理系统是从学生管理的现状出发,根据学生管理的新要求进行开发设计的,它解决了学生管理数据信息量大,修改不方便,对一系列数据进行统计与分析花费时间长等问题,帮助学生管理人员有效管理学生信息,成为高校管理中必不可少的管理工具。

2.系统功能分析●管理员对功能的需求管理员权限最大,可以对学生、班级、课程情况进行统一的管理,细分如下:添加、修改、删除管理员;有关学生信息的浏览,包括学生姓名、性别、民族、出生日期、入学时间、所在班级、籍贯和备注信息;学生信息的添加、修改和删除;学校基本课程的浏览,包括课程名、课程类型、学时、学分和课程具体描述;学校基本课程的添加、修改和删除;学生成绩信息的浏览与统计,可按成绩具体范围对成绩进行统计;学生成绩信息的添加、修改和删除;学生选课信息的管理,包括修改与删除;学生选课人数的统计。

●学生对功能的需求学生只是利用此系统进行与自己有关的信息查询、输入等,细分如下:浏览个人基本信息,具体内容包括姓名、学号、民族、出生日期、籍贯、所在班级、备注等;学生登陆系统后,修改个人密码;浏览课程信息,具体内容包括课程名、课程类型、学时、学分和课程具体描述;学生利用此系统选修课程、在选课过程中,可查询待选课程基本信息;浏览个人选课情况。

c语言课程设计源代码

c语言课程设计源代码

c语言课程设计源代码标准化管理处编码[BBX968T-XBB8968-NNJ668-MM9N]学校运动会管理系统问题描述:(1) 初始化输入:N-参赛院系总数,M-男子竞赛项目数,W-女子竞赛项目数;(2) 各项目名次取法有如下几种:取前5名:第1名得分 7,第2名得分 5,第3名得分3,第4名得分2,第5名得分 1;(3) 由程序提醒用户填写比赛结果,输入各项目获奖运动员的信息。

(4) 所有信息记录完毕后,用户可以查询各个院系或个人的比赛成绩,生成团体总分报表,查看参赛院系信息、获奖运动员、比赛项目信息等。

程序代码:#include<>#include<>#define N 3#define M 3#define W 3char* n_number[3]={"1","院系2","院系3"};char* m_number[3]={"1","男项2","男项3"};char* w_number[3]={"女项1","女项2","女项3"};int size=2;struct student{char num[10];char name[20];char xiangmu[20];int score;char ximing[20];}stu[100],temp;void input()um,&stu[i].name,&stu[i].xiangmu,&stu[i].score,&stu[i].ximing);iming,n_number[0])==0)iming);iming,n_number[h])==0)for(int s=0;s<M;s++){if(strcmp(stu[i].xiangmu,m_number[s])==0)temp = 1;else{for(int k=0;k<M;k++)if(strcmp(stu[i].xiangmu,w_number[k])==0)temp = 1;}}if(temp==0){i=i-1;printf("%s\n","输入信息有误,请重新输入!");}elseprintf("%s\n","本条信息录入完毕!");}printf("%s\n","所有信息录入完毕!");printf("输出:\n运动员号码,姓名,项目名,成绩,系名:\n");for(i=0;i<size;i++)printf("%s\t%s\t%s\t%d\t%s\n",stu[i].num,stu[i].name,stu[i].xiangmu,stu[ i].score,stu[i].ximing);}void find() 询院系比赛成绩************\n");printf("\t************2.查询个人比赛成绩************\n");char fs[20];while(1){int tt=0;printf("请输入编号:");scanf("%d",&tt);switch(tt){case 1:{temp =0;scorez = 0;printf("输入要查询的院系名称:");scanf("%s",&fs);printf("输出:\n系名,运动员号码,姓名,项目名,成绩:\n");for(int j=0;j<size;j++){if(strcmp(stu[j].ximing,fs)==0){temp =1;printf("%s\t%s\t%s\t%s\t%d\n",stu[j].ximing,stu[j].num,stu[j].name,stu[j ].xiangmu,stu[j].score);scorez = scorez +stu[j].score;}}if(temp==0)printf("没有找到相应的院系:\n");elseprintf("学院总成绩为:%d\n",scorez);break;}default:temp =0;printf("输入你要查找运动员的号码:");scanf("%s",&fs);printf("输出:\n运动员号码,姓名,项目名,成绩,系名:\n");for(int i=0;i<size;i++){if(strcmp(stu[i].num,fs)==0){temp =1;printf("%s\t%s\t%s\t%d\t%s\n",stu[i].num,stu[i].name,&stu[i].xiangmu,stu [i].score,stu[i].ximing);}}if(temp==0){printf("你要找的运动员未找到:\n");printf("该运动员缺赛或不存在!\n");}}}}void main(){input() ;find() ;}。

c简单课程设计代码

c简单课程设计代码

c 简单课程设计代码一、教学目标本课程的目标是让学生掌握C语言的基础知识,包括数据类型、变量、运算符、控制结构等,培养学生编写简单的C程序的能力。

1.理解C语言的基本概念和语法。

2.掌握数据类型、变量和运算符的使用。

3.熟悉控制结构,包括条件语句和循环语句。

4.能够编写简单的C程序,实现基本的输入输出功能。

5.能够使用C语言进行简单的数学计算。

6.能够利用控制结构编写复杂的程序。

情感态度价值观目标:1.培养学生对编程的兴趣和热情。

2.培养学生的逻辑思维和问题解决能力。

3.培养学生的团队合作和自主学习能力。

二、教学内容本课程的教学内容主要包括C语言的基本概念、数据类型、变量、运算符、控制结构等。

1.C语言的基本概念:介绍C语言的历史和发展,理解C语言的特点和优势。

2.数据类型:整型、浮点型、字符型等数据类型的定义和使用。

3.变量:变量的概念、声明和赋值。

4.运算符:算术运算符、关系运算符、逻辑运算符等运算符的使用。

5.控制结构:条件语句、循环语句等控制结构的使用。

三、教学方法本课程将采用讲授法、讨论法、案例分析法等教学方法。

1.讲授法:通过教师的讲解,让学生理解C语言的基本概念和语法。

2.讨论法:通过小组讨论,培养学生的团队合作能力和问题解决能力。

3.案例分析法:通过分析典型案例,让学生掌握C语言编程的方法和技巧。

四、教学资源本课程的教学资源包括教材、参考书、多媒体资料和实验设备。

1.教材:选用权威出版的C语言教材,为学生提供系统的学习材料。

2.参考书:提供相关的参考书籍,供学生深入学习和拓展知识。

3.多媒体资料:利用多媒体课件和教学视频,丰富学生的学习体验。

4.实验设备:提供计算机和实验设备,让学生进行编程实践和实验操作。

五、教学评估本课程的评估方式包括平时表现、作业和考试等,以全面、客观、公正地评价学生的学习成果。

1.平时表现:通过课堂参与、提问、小组讨论等环节,评估学生的学习态度和参与程度。

C语言程序设计实验及代码

C语言程序设计实验及代码

C语言程序设计实验及代码随着计算机技术的快速发展,C语言作为一种高效且强大的编程语言,被广泛应用于软件开发、嵌入式系统以及科学计算等领域。

在学习C语言编程的过程中,进行实验并编写相应的代码是非常重要的一部分,可以帮助我们巩固所学的知识并提高编程能力。

本文将介绍几个常见的C语言程序设计实验,并给出相应的代码示例。

一、实验一:Hello, World!实验目的:熟悉C语言编程环境,掌握简单的编译和运行操作。

实验内容:编写一个简单的程序,在屏幕上输出"Hello, World!"。

代码示例:```c#include <stdio.h>int main() {printf("Hello, World!\n");return 0;}```二、实验二:求两个整数的和与差实验目的:学习C语言中的基本数据类型和算术运算符的使用。

实验内容:编写一个程序,输入两个整数并计算它们的和与差,然后输出结果。

代码示例:```c#include <stdio.h>int main() {int num1, num2, sum, diff;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;diff = num1 - num2;printf("两数之和:%d\n", sum);printf("两数之差:%d\n", diff);return 0;}```三、实验三:判断一个数是奇数还是偶数实验目的:学习C语言中的分支语句的使用。

实验内容:编写一个程序,输入一个整数,并判断它是奇数还是偶数,然后输出结果。

代码示例:```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("%d是偶数。

c语言课程设计+报告+源代码

c语言课程设计+报告+源代码

西安郵電大學C语言课程设计报告题目: 职工工资管理系统院系名称: 计算机学院专业名称: 软件工程班级:学生姓名:学号(8位):指导教师:设计起止时间: 2013年06月03日~2013年06月12日一.设计目的1.通过本课程设计, 强化上机动手能力, 使学生在理论和实践的基础上进一步巩固《c语言程序设计》课程学习的内容, 掌握工程软件设计的基本方法.2.学会将知识应用于实际的方法, 提高分析和解决问题的能力, 增加综合能力.3.为后续各门计算机课程的学习打下坚实基础; 为毕业设计和以后工作打下必要基础。

二.设计内容本设计主要包括了用户登录和主菜单,其中用户登录包括了一下几个功能1.新用户的注.2.用户登.3。

用户密码的修改。

而主菜单包括: 1.职工信息的录.2.职工信息的修.3.选择性排.4.统计人数和工.5. 输出现有的信.6.自定义查询信息。

三. 概要设计1. 功能模块图;1.2. 各个模块详细的功能描述。

2.修改密码的时候, 需要输入原密码, 并且输入两次新的密码必须相同才能完成密码的修改。

3.用户登录: 需要输入用户名和密码, 如果用户名不存在或密码错误会给出相应的提醒, 当输入正确的时候会进入主菜单。

4.新用户注册:需要输入注册的用户和密码, 如果用户明已被注册过会给出相应的提醒。

5.职工信息的输入:是从无开始输入职工的信息, 同样也会给出输入内容的提醒, 当输入最后一次职工的信息为零时结束输入, 同是会将输入的信息写入到文件里。

6.修改职工信息其中包括a.添加职工信息和输入职工信息相同在添加完会提醒是否继续添加。

b.修改员工信息: 此时会出现选择性修改职工的哪项信息,先进行选择再进行修改。

C.删除员工信息: 需要输入所要删除员工的姓名或id进行删除!如果删除不成功或者删除者不存在会给出相应的提醒。

7.统计信息: 会自动的统计现有员工的总人数和现有员工的总工资。

8.输出现有职工的信息: 会显示现在记录的职工的各项信息。

c语言课程设计及源代码

c语言课程设计及源代码

c语言课程设计及源代码一、教学目标本课程旨在让学生掌握C语言的基本语法、数据结构、算法和编程思想,培养学生具备基本的程序设计能力。

通过本课程的学习,学生将能够:1.理解C语言的基本语法和编程规则;2.熟练使用C语言进行简单的程序设计;3.掌握常用的数据结构和算法;4.培养良好的编程习惯和问题解决能力。

二、教学内容教学内容将按照教材的章节进行,主要包括:1.C语言的基本语法和编程规则;2.数据类型的定义和运算;3.控制语句和函数的使用;4.常用的数据结构和算法;5.指针和内存管理;6.文件操作和编程实践。

三、教学方法为了激发学生的学习兴趣和主动性,将采用多种教学方法:1.讲授法:通过讲解和演示,让学生掌握C语言的基本语法和编程规则;2.讨论法:通过小组讨论和实践,让学生深入理解和运用数据结构和算法;3.案例分析法:通过分析实际案例,让学生学会解决实际编程问题;4.实验法:通过上机实验,让学生动手实践,巩固所学知识。

四、教学资源为了支持教学内容和教学方法的实施,将准备以下教学资源:1.教材:选用权威、实用的C语言教材;2.参考书:提供相关的参考书籍,供学生自主学习;3.多媒体资料:制作PPT和教学视频,辅助讲解和演示;4.实验设备:提供计算机实验室,让学生进行上机实验。

通过以上教学设计,相信学生能够顺利完成本课程的学习,掌握C语言编程的基本技能。

五、教学评估为了全面、客观、公正地评估学生的学习成果,将采用多种评估方式:1.平时表现:通过课堂参与、提问和讨论,评估学生的学习态度和理解程度;2.作业:布置适量的作业,评估学生的编程能力和实践能力;3.考试:进行期中和期末考试,评估学生对课程知识的掌握程度;4.项目实践:课程项目,让学生综合运用所学知识解决问题,评估学生的综合能力。

六、教学安排教学安排将根据课程内容和学生的实际情况进行设计:1.教学进度:按照教材的章节顺序,合理安排每一节课的教学内容;2.教学时间:根据学生的作息时间,选择合适的时间段进行授课;3.教学地点:选择适宜的教室或实验室,保证教学环境的舒适和设施的齐全;4.教学活动:结合学生的兴趣爱好,安排一些实践活动,提高学生的学习积极性。

c课程设计代码

c课程设计代码

c 课程设计代码一、教学目标本课程的教学目标是使学生掌握C语言的基本语法、数据结构和算法,培养学生具备基本的编程能力和逻辑思维能力。

具体目标如下:1.知识目标:(1)了解C语言的发展历程和特点;(2)掌握C语言的基本语法,包括数据类型、运算符、表达式、语句等;(3)理解函数的定义和调用,掌握函数的参数传递和返回值;(4)熟悉常用的数据结构,如数组、链表、栈和队列;(5)掌握基本的算法,如排序、查找、递归等。

2.技能目标:(1)能够使用C语言编写简单的程序,解决问题;(2)具备基本的编程能力和逻辑思维能力,能够独立思考和解决问题;(3)能够阅读和理解C语言的程序代码,进行调试和修改;(4)能够运用所学知识,分析和设计简单的算法。

3.情感态度价值观目标:(1)培养学生对计算机科学的兴趣和热情,提高学习积极性;(2)培养学生具备良好的编程习惯,注重代码规范和可读性;(3)培养学生团队协作精神,提高沟通和合作能力;(4)培养学生具备创新意识,勇于挑战和探索新知识。

二、教学内容根据课程目标,本课程的教学内容主要包括以下几个方面:1.C语言的基本语法:数据类型、运算符、表达式、语句等;2.函数的定义和调用:参数传递、返回值等;3.数据结构:数组、链表、栈和队列等;4.基本算法:排序、查找、递归等;5.编程实践:编写简单的C语言程序,解决问题。

三、教学方法为了达到课程目标,本课程将采用以下教学方法:1.讲授法:讲解C语言的基本语法、数据结构和算法,引导学生理解和掌握知识;2.讨论法:学生进行小组讨论,培养学生的团队协作能力和解决问题的能力;3.案例分析法:分析典型的C语言程序,使学生更好地理解编程思想和方法;4.实验法:让学生动手编写C语言程序,提高学生的编程能力和实践能力。

四、教学资源为了支持教学内容和教学方法的实施,本课程将采用以下教学资源:1.教材:选用权威、实用的C语言教材,为学生提供系统、全面的学习资料;2.参考书:提供丰富的参考书籍,拓展学生的知识面;3.多媒体资料:制作精美的PPT、教学视频等,增强课堂教学的趣味性和生动性;4.实验设备:提供计算机、编程环境等实验设备,让学生进行实际操作和练习。

c语言课程设计源代码

c语言课程设计源代码

学校运动会管理系统问题描述:(1) 初始化输入:N-参赛院系总数,M-男子竞赛项目数,W-女子竞赛项目数;(2) 各项目名次取法有如下几种:取前5名:第1名得分 7,第2名得分 5,第3名得分3,第4名得分2,第5名得分 1;(3) 由程序提醒用户填写比赛结果,输入各项目获奖运动员的信息。

(4) 所有信息记录完毕后,用户可以查询各个院系或个人的比赛成绩,生成团体总分报表,查看参赛院系信息、获奖运动员、比赛项目信息等。

程序代码:#include<stdio.h>#include<string.h>#define N 3#define M 3#define W 3char* n_number[3]={"1","院系2","院系3"};char* m_number[3]={"1","男项2","男项3"};char* w_number[3]={"女项1","女项2","女项3"};int size=2;struct student{char num[10];char name[20];char xiangmu[20];int score;char ximing[20];}stu[100],temp;void input() //输入原始数据//{int temp = 0;printf("\t************输入界面************\n");printf("请输入:\n运动员号码,姓名,项目名,成绩,系名:\n");for(int i=0;i<size;i++){scanf("%s%s%s%d%s",&stu[i].num,&stu[i].name,&stu[i].xia ngmu,&stu[i].score,&stu[i].ximing);// if(strcmp(stu[i].ximing,n_number[0])==0)// printf(stu[i].ximing);//printf("%s\n",n_number[0]);for(int h=0;h<N;h++)if(strcmp(stu[i].ximing,n_number[h])==0)for(int s=0;s<M;s++){if(strcmp(stu[i].xiangmu,m_number[s])==0)temp = 1;else{for(int k=0;k<M;k++)if(strcmp(stu[i].xiangmu,w_number[k])==0)temp = 1;}}if(temp==0){i=i-1;printf("%s\n","输入信息有误,请重新输入!");}elseprintf("%s\n","本条信息录入完毕!");}printf("%s\n","所有信息录入完毕!");printf("输出:\n运动员号码,姓名,项目名,成绩,系名:\n");for(i=0;i<size;i++)printf("%s\t%s\t%s\t%d\t%s\n",stu[i].num,stu[i].name,st u[i].xiangmu,stu[i].score,stu[i].ximing);}void find() //查找函数//{int temp =0;int scorez = 0;printf("\t************查找界面************\n");printf("\t************1.查询院系比赛成绩************\n");printf("\t************2.查询个人比赛成绩************\n");char fs[20];while(1){int tt=0;printf("请输入编号:");scanf("%d",&tt);switch(tt){case 1:{temp =0;scorez = 0;printf("输入要查询的院系名称:");scanf("%s",&fs);printf("输出:\n系名,运动员号码,姓名,项目名,成绩:\n");for(int j=0;j<size;j++){if(strcmp(stu[j].ximing,fs)==0){temp =1;printf("%s\t%s\t%s\t%s\t%d\n",stu[j].ximing,stu[j].num, stu[j].name,stu[j].xiangmu,stu[j].score);scorez = scorez +stu[j].score;}}if(temp==0)printf("没有找到相应的院系:\n");elseprintf("学院总成绩为:%d\n",scorez);break;}default:temp =0;printf("输入你要查找运动员的号码:");scanf("%s",&fs);printf("输出:\n运动员号码,姓名,项目名,成绩,系名:\n");for(int i=0;i<size;i++){if(strcmp(stu[i].num,fs)==0){temp =1;printf("%s\t%s\t%s\t%d\t%s\n",stu[i].num,stu[i].name,&s tu[i].xiangmu,stu[i].score,stu[i].ximing);}}if(temp==0){printf("你要找的运动员未找到:\n");printf("该运动员缺赛或不存在!\n");}}}}void main(){input() ;find() ;}。

c语言课程设计报告及其源代码

c语言课程设计报告及其源代码

西安郵電學院C语言课程设计报告书系部名称通信工程系学生姓名王子源专业名称通信工程专业班级通工0901班学号03091001指导教师衡霞2010年06月07日至时间2010年06月18日实验题目学生宿舍管理系统一、实验目的通过进行计算机实践,更加系统地理解和掌握C语言的基本概念、语言特点和编程技巧。

利用系统提供的标准函数和自定义函数进行程序设计,培养利用C语言设计综合程序的能力。

二、实验内容在熟练掌握C语言的基本知识:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的使用)等。

进一步掌握各种函数的应用。

三、需求分析本学生信息管理系统包含输入记录,显示记录,按房间号排序并显示,按学号排序并显示,插入一条记录按学号排序并显示,按姓名查找,删除一条记录,查找并显示一个记录,查找并修改一个记录,从文件中读入数据,循环写入数据等功能.需求分析:输入记录(Input)显示记录(Display)按房间号排序并显示(Sort_by_roomnum)按学号排序并显示(Sort_by_num)插入一条记录按学号排序并显示(Insert_a_record)按姓名查找,删除一条记录(Delete_a_record)查找并显示一个记录(Query_a_record)查找并修改一个记录(Change_a_record)从文件中读入数据(AddfromText)循环写入数据(WritetoText)四.概要设计1.系统分析功能模块图:总目录以及下属的各个模块,这样可以使得程序的书写脉络清晰流畅。

程序结构图2、模块功能说明(1)输入记录模块(Input):用于输入学生的各项信息(2)显示记录模块(Display):按照输入的顺序显示出每个学生的各项信息(3)按房间号排序并显示模块(Sort_by_roomnum):按照房间号顺序显示每个学生信息(4)按学号排序并显示模块(Sort_by_num):按照学号顺序显示每个学生信息(5)插入一条记录按学号排序并显示模块(Insert_a_record):插入一条记录并按学号显示出所有记录。

c课程设计报告含代码

c课程设计报告含代码

c课程设计报告含代码 Standardization of sany group #QS8QHH-HHGX8Q8-GNHHJ8-HHMHGN#C++课程设计报告专业:学号:姓名:同组人:提交日期:【设计目的】1、通过设计一个较为简单的《商场库存货物管理系统》,进一步熟悉C++中类的概念、类的封装、继承的实现方式。

2、了解系统开发的需求分析、类层次设计、模块分析、编码测试、模块组装与整体调试的全过程,加深对C++的理解与Visual C++环境的使用;逐步熟悉程序设计的方法,并养成良好的编程习惯。

【设计内容】1、设计某公司的库存管理系统。

此程序是为了更好的处理货物的详细信息。

包括货物的货物的入库、出库、查询、统计。

并且能够很好的让使用者了解库存货物的有关信息。

2、系统要求能够按编号显示、查找、增加、删除、和保存各类货物的信息。

输入和输出货物的有关信息并且对输入保存文件里确定程序至少具备以下功能:查询模块、增加模块、删除模块、货物的有关信息数据存盘等的基本模块。

3、系统具有“货物的有关信息数据存盘”的功能,所以货物的有关信息数据可以保存到磁盘文件,那么也就意味着今后可以从磁盘文件读出货物的有关信息,可以方便用户使用,避免数据重复录入,考虑到系统实现简洁,货物数据文件采用文本文件,货物数据文件名:。

4、作为一个完整的系统,除了具有增加货物,删除货物的信息模块,还应该具有修改货物相关信息的功能,所以本系统具备了“商品入库”、“商品出库”、“查询统计”、“商品报损”、“退出系统”,这5个基本功能,就可以以最简捷的方式实现对货物的管理,也就实现了系统的要求。

5、下图中黑体字部分程序块为我完成的代码块【实验环境】1.硬件环境:(1)电脑型号戴尔 Inspiron 5557 笔记本电脑 (扫描时间:2017年01月11日)(2)操作系统Windows 10 Enterprise 64位 ( DirectX 12 )(3)处理器英特尔 Core i7-6500U @ 双核(4)主板戴尔 03XTY7 ( 英特尔 PCI 标准主机 CPU 桥 - 100 Series 芯片组Family/eSPI Controller - 9D48 )(5)内存8 GB ( 镁光 DDR3L 1600MHz )(6)主硬盘三星 SSD 850 EVO 500GB ( 500 GB / 固态硬盘 )(7)显卡Nvidia GeForce 930M ( 4 GB )(8)显示器友达 AUO38ED ( 英寸 )2.软件环境:Windows 10 Enterprise 64位 ( DirectX 12 )、Visual Studio 2015【设计中使用函数说明】char manage::first_face()品入库3.商品查询4.按商品名查询5.按商品价格查询6.按商品大类查询7.商品报损【设计总结】经过一个学期对《C++程序设计》的学习,我学习到了基本的理论知识,了解到了C++语言程序设计的思想,这些知识都为我的课程实践和进一步的学习打下了坚实的基础。

C++课程设计报告书(源代码)学生管理系统

C++课程设计报告书(源代码)学生管理系统

C++课程设计报告书(学生成绩管理系统)一、题目描述<用面向对象程序设计(OOP)方法实现一个简易的学生成绩管理系统,具备以下功能:1)用户注册2)用户登录3)成绩录入、修改、插入、删除4)成绩查询5)成绩简要统计6)图形界面、全英文注释>二、源代码(代码超过20页时附主要源代码)#include<iostream>#include<iomanip>#include<conio.h>#include<fstream>#include<string>using namespace std;class Teacher_T //教师类{public:void Display();//进入界面void Register();//注册void Login();//登录};Teacher_T Tea1; //生成教师类对象class Student_T//学生类{private:string name,sex;int num;float math,eng,cpt,pol; //成绩public:void Display1();void Register1();void Login1();void Seache();};Student_T Stu1;//生成对象class T //教师操作类{public:void choose();//教师操作主页面void T_input();//输入学生信息void T_insert();//插入学生信息void T_modification();//修改学生信息void T_grade();//实现成绩的统计void T_cancel();//删除学生信息void T_seache();//查询学生信息private:int a;//控制下面若干函数的分支string name,sex;int num;float math,eng,cpt,pol; //成绩};T t1; //生成类void T::choose() //教师主操作界面{ system("cls");cout<<"教师综合系统>>"<<endl;cout<<endl<<endl<<endl<<endl;do{cout<<" "<<endl;cout<<" "<<endl;cout<<" *************☇⊙●★☆☇**************** "<<endl;cout<<" * * "<<endl;cout<<" * 1 输入成绩 * "<<endl;cout<<" * 2 插入成绩 * "<<endl;cout<<" * 3 修改成绩 * "<<endl;cout<<" * 4 删除成绩 * "<<endl; cout<<" * 5 统计成绩 * "<<endl;cout<<" * 6 查询成绩 * "<<endl;cout<<" * 7 退出系统 * "<<endl;cout<<" * * "<<endl;cout<<" *************☇⊙●★☆☇**************** "<<endl<<endl;cout<<" 请输入需要的数字:";cin>>a;switch(a){case 1:t1.T_input();break; //当选择输入时进入T_input()case 2:t1.T_insert();break; //当选择插入时进入T_insert()case 3:t1.T_modification();break; //当选择修改时进入T_modification()case 4:t1.T_cancel();break; //当选择删除时进入T_cancel()case 5:t1.T_grade();break;case 6:t1.T_seache();case 7:exit(0); //退出系统}}while(a!=8);}void T::T_input() //输入函数{ system("cls");cout<<"教师综合系统>>输入"<<endl;cout<<endl<<endl<<endl<<endl;do{cout<<" **输入学生成绩**"<<endl<<endl<<endl;cout<<" 请输入学生数据"<<endl;cout<<" 请输入学生姓名:";cin>>name; //输入姓名cout<<" 请输入学生学号:";cin>>num; //输入学号cout<<" 请输入学生性别(m/f):";cin>>sex; //输入性别cout<<" 请输入学生成绩:"<<endl;cout<<" 高数成绩:";cin>>math; //输入高数成绩cout<<" 大英成绩:";cin>>eng; //输入大英成绩cout<<" 电脑成绩:";cin>>cpt; //输入电脑成绩cout<<" 政治成绩:";cin>>pol; //输入政治成绩cout<<" *************************************"<<endl;cout<<" 1 确定"<<endl;cout<<" 2 取消"<<endl;cout<<" *************************************"<<endl;cout<<" "<<endl;cout<<" 请选择数字:";cin>>a;switch(a){case 1:{ //存文件ofstream outfile("Data.txt",ios::app);outfile<<name<<"\t"<<num<<"\t"<<sex<<"\t"<<math<<"\t"<<eng<<"\t"<<cpt<<"\t"<<pol<<"\t";outfile.close();choose(); };break;case 2:choose();break;}}while(a!=1);}void T::T_insert() //教师操作插入功能{ system("cls");cout<<"教师综合系统>>插入"<<endl;cout<<endl<<endl<<endl<<endl;int c;do{cout<<" **输入学生成绩**"<<endl<<endl<<endl;cout<<" 请输入学生数据"<<endl;cout<<" 请输入学生姓名:";cin>>name; //输入姓名cout<<" 请输入学生学号:";cin>>num; //输入学号cout<<" 请输入学生性别(m/f):";cin>>sex; //输入性别cout<<" 请输入学生成绩:"<<endl;cout<<" 高数成绩:";cin>>math; //输入高数成绩cout<<" 大英成绩:";cin>>eng; //输入大英成绩cout<<" 电脑成绩:";cin>>cpt; //输入电脑成绩cout<<" 政治成绩:";cin>>pol; //输入政治成绩cout<<" *************************************"<<endl;cout<<" 1 确定"<<endl;cout<<" 2 取消"<<endl;cout<<" *************************************"<<endl;cout<<" "<<endl;cout<<" 请选择数字:";cin>>c;switch(c){case 1:{ofstream outfile("Data.txt",ios::app);outfile<<name<<"\t"<<num<<"\t"<<sex<<"\t"<<math<<"\t"<<eng<<"\t"<<cpt<<"\t"<<pol<<"\t";outfile.close();choose();};break;case 2:choose();break;}}while(c!=1);}void T::T_modification() //教师操作修改功能{ system("cls");cout<<"教师综合系统>>修改"<<endl;cout<<endl<<endl<<endl<<endl;string num1;string name2,num2,sex2,math2,eng2,cpt2,pol2;string math3,eng3,cpt3,pol3;cout<<" ****************************************"<<endl;cout<<" ▲修改学生信息▲"<<endl;cout<<" ****************************************"<<endl;cout<<" "<<endl;cout<<" 请输入学号:";cin>>num1; //输入要学生的学号string A[50][7];ifstream infile("Data.txt",ios::binary);for(int i=0;i<50;i++) //读入学生数据{infile>>A[i][0]>>A[i][1]>>A[i][2]>>A[i][3]>>A[i][4]>>A[i][5]>>A[i][6];}infile.close();for(i=0;i<50;i++) //暂存读出的数据{name2=A[i][0];num2=A[i][1];sex2=A[i][2];math2=A[i][3];eng2=A[i][4];cpt2=A[i][5];pol2=A[i][6];if(num1==A[i][1]) A[i][1]="0"; //注销该学生信息}cout<<"请输入高数成绩:"<<endl;//修改高数cin>>math2;math3=math2;cout<<"请输入大英成绩:"<<endl;//修改大英cin>>eng2;eng3=eng2;cout<<"请输入电脑成绩:"<<endl;//修改电脑cin>>cpt2;cpt3=cpt2;cout<<"请输入政治成绩:"<<endl;//修改政治cin>>pol2;pol3=pol2;ofstream outfile("Data.txt",ios::app);outfile<<name2<<"\t"<<num2<<"\t"<<sex2<<"\t"<<math3<<"\t"<<eng3<<"\t"<<cpt3<<"\t"<<pol3<<"\t";//重新存入学生信息outfile.close();cout<<"已修改";getch();choose();}void T::T_cancel() //教师操作的删除功能{ system("cls");cout<<"教师综合系统>>注册"<<endl;cout<<endl<<endl<<endl<<endl;int d; //控制下面的循环string num1;char a='0',b='0';cout<<" ****************************************"<<endl;cout<<" ▲删除学生信息▲"<<endl;cout<<" ****************************************"<<endl;cout<<" "<<endl;cout<<" 请输入学号:";//输入删除学生的学号cin>>num1;cout<<" ***********************"<<endl;cout<<" 1 确定"<<endl;cout<<" 2 取消"<<endl; cout<<" ***********************"<<endl;cout<<" "<<endl;cout<<" 请选择数字:";cin>>d;switch(d){case 1:{ //删除功能函数system("cls");string A[50][7]; //存放读入的学生数据ifstream infile("Data.txt",ios::binary);for(int i=0;i<50;i++) //读入全部数据{infile>>A[i][0]>>A[i][1]>>A[i][2]>>A[i][3]>>A[i][4]>>A[i][5]>>A[i][6];}infile.close();for(i=0;i<50;i++) if(num1==A[i][1]) A[i][1]="0";//注销原学生信息ofstream Ofile("Data.txt",ios::out);//将原文件清空Ofile.close();ofstream outfile("Data.txt",ios::app);for(i=0;i<30;i++){if(A[i][1]!="0") //重新保存合法的用户信息outfile<<A[i][0]<<"\t"<<A[i][1]<<"\t"<<A[i][2]<<"\t"<<A[i][3]<<"\t"<<A[i][4]<<"\t"<<A[i][5]<<"\t"<<A[i][6]<<"\t";}outfile.close();cout<<"已删除";getch();choose();};break;case 2:choose(); //返回主界面}}void T::T_seache(){ system("cls");cout<<"教师综合系统>>"<<endl;cout<<endl<<endl<<endl<<endl;int number;bool pd;cout<<"请输入学号:";cin>>number;ifstream infile("Data.txt",ios::binary);infile>>name>>num>>sex>>math>>eng>>cpt>>pol;while(infile.good()){ if (num==number){cout<<" 姓名 "<<name<<" 座号"<<num<<" 性别 "<<sex;cout<<" 数学 "<<math<<" 英语 "<<eng<<" 电脑 "<<cpt<<" 政治 "<<pol<<endl;cout<<" 任意键返回上一级 ";pd=false;getch();break;}else{infile>>name>>num>>sex>>math>>eng>>cpt>>pol;pd=true;}}if(pd){cout<<"不存在该学号成绩,任意键返回上一级";getch();}choose();infile.close();}void T::T_grade()//下面是姐的{ system("cls");cout<<"教师综合系统>>注册"<<endl;cout<<endl<<endl<<endl<<endl;int s,num1;float aver;bool pd;cout<<" 请输入统计的学生学号:";cin>>num1;ifstream infile("Data.txt",ios::binary);while(infile.good()){if(num==num1){cout<<" 姓名: "<<name<<" 座号:"<<num<<" 性别:"<<sex;cout<<" 数学:"<<math<<" 英语:"<<eng<<" 电脑:"<<cpt<<" 政治:"<<pol<<endl;s=math+eng+cpt+pol;//总成绩存放在s中aver=s/4;//平均成绩存放在aver中cout<<"总成绩是:"<<s<<"平均成绩是:"<<aver<<endl;if(math>=60&&eng>=60&&cpt>=60&&pol>=60)cout<<"没有不及格科目!"<<endl;else if(math<60&&eng>=60&&cpt>=60&&pol>=60)cout<<"不及格科目:高数。

C语言课程设计小代码

C语言课程设计小代码

C语言课程设计小代码一、教学目标本课程旨在通过C语言的教学,让学生掌握C语言的基本语法、数据结构、算法和编程思想,培养学生独立思考、解决问题的能力,提高学生的编程实践能力。

具体目标如下:知识目标:1. 掌握C语言的基本语法和关键字;2. 理解数据类型、变量、常量的概念及使用方法;3. 熟悉运算符、表达式和语句的结构;4. 理解函数的定义和调用方式;5. 掌握数组、指针、字符串的基本操作;6. 了解结构体、共用体和枚举类型;7. 理解程序的编译和运行过程。

技能目标:1. 能够使用C语言编写简单的程序;2. 能够阅读和理解C语言程序;3. 能够利用C语言进行数学计算和数据处理;4. 能够使用C语言进行简单的图形界面编程。

情感态度价值观目标:1. 培养学生对计算机科学的兴趣和热情;2. 培养学生勇于探索、积极思考的科学精神;3. 培养学生团队协作、沟通交流的能力;4. 培养学生良好的编程习惯和道德素养。

二、教学内容本课程的教学内容主要包括C语言的基本语法、数据结构、算法和编程思想。

具体安排如下:1.C语言的基本语法:介绍C语言的基本组成,包括关键字、标识符、数据类型、变量、常量、运算符、表达式和语句等。

2.数据结构:介绍数组、指针、字符串、结构体、共用体和枚举类型等基本数据结构的使用方法和操作技巧。

3.算法和编程思想:介绍算法的基本概念和常用算法,如排序、查找等,以及编程思想,如面向对象编程、模块化编程等。

4.编程实践:通过实际案例,让学生掌握C语言编程的基本技巧,培养学生的编程能力和解决问题的能力。

三、教学方法本课程采用讲授法、案例分析法、实验法等多种教学方法,以激发学生的学习兴趣和主动性。

1.讲授法:通过讲解C语言的基本语法、数据结构和算法,使学生掌握C语言的基本知识。

2.案例分析法:通过分析实际案例,让学生了解C语言在实际编程中的应用,提高学生的编程实践能力。

3.实验法:安排实验课程,让学生动手编写C语言程序,培养学生的编程能力和解决问题的能力。

小学数学测试系统C课程设计报告及源程序代码

小学数学测试系统C课程设计报告及源程序代码
数学测试的需求。
用户界面友好
系统界面简洁明了,易于操作 ,适合小学生使用。
稳定性与可靠性
经过多次测试,系统运行稳定 ,评分准确,达到了预期的设
计目标。
经验教训分享
需求分析重要性
在项目开始之前,充分进行需求分析,明确系统需要实现 的功能和性能要求,有助于避免后期开发过程中的需求变 更和返工。
团队协作与沟通
成绩管理
系统需要提供成绩的录入、修改、删除和查询功能,以 便教师可以方便地管理学生成绩。
数据分析
系统需要提供数据分析功能,包括学生成绩统计、试题 难度分析、知识点掌握情况等,以帮助教师更好地了解 学生的学习情况。
性能需求
01
02
03
响应时间
系统响应时间应小于2秒 ,以确保用户可以流畅地 使用系统。
小学数学测试系统C课 程设计报告及源程序代 码
2024-01-04
目录
• 引言 • 需求分析 • 系统设计 • 系统实现 • 系统测试与评估 • 源程序代码展示与解析 • 课程设计总结与展望
引言
01
目的和背景
01 02
教育信息化改革
随着教育信息化的推进,传统纸质测试方式已逐渐被计算机化测试所取 代。小学数学测试系统C课程设计的目的是适应这一趋势,提供一个高 效、准确的数学测试平台。
THANKS.
统计用户成绩,提供成绩查询 、导出等功能。
系统测试与调试
单元测试
对关键函数进行单元测试,确 保函数功能正确。
集成测试
对所有模块进行集成测试,确 保模块间接口一致,数据传输 无误。
系统测试
对整个系统进行测试,包括用 户登录、试题管理、组卷、测 试和成绩统计等功能,确保系 统稳定可靠。

C程序设计 课程设计源代码

C程序设计  课程设计源代码

#include <stdio.h>#include <string.h>#include <stdlib.h>#include <conio.h>#define SIZE1 7long a;//学生学号int m,n,all;//统计所用的全局变量char s[30];//学生姓名FILE *C;//课程信息文件指针FILE *S;//学生信息文件指针struct course//课程信息结构体{int num;//课程编号char name[30];//课程名称int score;//课程学分char nianji[30];//面向的年级char zhuanye[30];//面向的专业int yixuan;//已选的人数int shangxian;//选课的人数上限}course[SIZE1],*P;struct student//学生信息结构体{int number;//学生学号char name[30];//学生姓名char banji[30];//学生班级}student[100],*Q;void zhucaidan()//主菜单{printf("\n");printf("************************************************************************* *******");printf("\n\t\t\t欢迎使用学生选课系统\n");printf("1.录入课程信息\n");printf("2.录入学生信息\n");printf("3.学生选课\n");printf("4.退出系统\n");printf("************************************************************************* *******");printf("\n请输入你要选择的菜单项:");}void filecourse()//从文件录入课程信息{int i;FILE *W;P=course;printf("课程编号课程名称\t课程学分年级\t 专业已选人数上限\n");W=fopen("课程信息文件","rb");for (i=0;i<SIZE1;i++){fread(&course[i],sizeof(struct course),1,W);printf("%d\t%8s\t %d \t%8s\t%8s\t%d \t%d\n",P[i].num,P[i].name,P[i].score,P[i].nianji,P[i].zhuanye,P[i].yixuan,P[i].shangxian);}fclose(W);}void keycourse()//从键盘录入课程信息{int k;P=course;printf("输入#结束录入\n");if ((C=fopen("课程信息文件","wb+"))==NULL){printf("不能打开文件");exit(1);}printf("课程名称课程编号\t课程学分\t面向的年级\t面向的专业\t人数上限\n");for (k=0;k<SIZE1;k++){scanf("%s",&P[k].name);if(strcmp(P[k].name,"#")==0) break;scanf("%d%d%s%s%d",&P[k].num,&P[k].score,&P[k].nianji,&P[k].zhuanye,&P[k].shangxian);if (fwrite(&course[k],sizeof(struct course),1,C)!=1)printf("文件写入错误");}fclose(C);}void keystudent()//从键盘录入学生信息{int i;Q=student;printf("输入#结束录入\n");if ((S=fopen("学生课息文件","wb+"))==NULL){printf("不能打开文件");exit(1);}printf("学生姓名\t学生学号\t学生班级\n");for (i=0;i<10;i++,all=i){scanf("%s",&Q[i].name);if(strcmp(Q[i].name,"#")==0) break;scanf("%d%s",&Q[i].number,&Q[i].banji);if (fwrite(&student[i],sizeof(struct student),1,S)!=1)printf("文件写入错误");}fclose(S);}void filestudent()//从文件录入学生信息{int i;printf("学生学号学生姓名学生班级\n");for (i=0;i<all;i++){fread(&student[i],sizeof(struct student),1,S);printf("%d\t\t%8s\t%8s\n",Q[i].number,Q[i].name,Q[i].banji);}fclose(S);}void zstudent()//录入学生信息子程序{int i;system("cls");printf("\t\t\t录入学生信息\n");printf("1.从键盘录入\n");printf("2.从文件录入\n");printf("3.返回主菜单\n");printf("请输入你要选择的选项:");scanf("%d",&i);switch (i){case(1):keystudent();break;case(2):filestudent();break;case(3):zhucaidan();break;}}void zcourse()//选课函数目录{int j;system("cls");printf("\t\t\t录入课程信息\n");printf("1.从键盘录入\n");printf("2.从文件录入\n");printf("3.返回主菜单\n");printf("\n请输入你要选择的菜单项:");scanf("%d",&j);switch (j){case(1):keycourse();break;case(2):filecourse();break;case(3):system("cls");break;}}void xuanke()//选择课程函数{FILE *Y;Y=fopen("选课.txt","w+");if(Y==NULL){printf("不能打开文件!\n");exit(1);}fanhui:printf("请输入你要选择的第一门课程编号:");scanf("%d",&m);fprintf(Y,"%d",m);if(m<1||m>7){printf("警示:不存在此课程,请重新输入\n");goto fanhui;}switch(m){case(1):printf("你选择了1.< dianlu >\n");break;case(2):printf("你选择了2.< Cyuyan >\n");break;case(3):printf("你选择了3.< xiandai >\n");break;case(4):printf("你选择了4.< daxuewuli >\n");break;case(5):printf("你选择了5.< dianji >\n");break;case(6):printf("你选择了6.< heike >\n");break;case(7):printf("你选择了7.< wanye >\n");break;}printf("请输入你要选择的第二门课程编号:");scanf("%d",&n);fprintf(Y,"%d",n);if(n<1||n>7){printf("警示:不存在此课程,请重新输入\n");goto fanhui;}switch(n){case(1):printf("你选择了1.< dianlu >\n");break;case(2):printf("你选择了2.< Cyuyan >\n");break;case(3):printf("你选择了3.< xiandai >\n");break;case(4):printf("你选择了4.< daxuewuli >\n");break;case(5):printf("你选择了5.< dianji >\n");break;case(6):printf("你选择了6.< heike >\n");break;case(7):printf("你选择了7.< wangye >\n");break;}fclose(Y);}void courselist()//课程列表{int i;printf("编号课程名称\t 课程学分\t 已选人数\t 人数上限\n");for (i=0;i<7;i++)printf("%d\t%8s\t\t%d\t%8d\t\t%d\n",course[i].num,course[i].name,course[i].score,course[i].yixua n,course[i].shangxian);xuanke();}void k2course()//课程列表2{int i;FILE *W;printf("\n你最多只能选择以下课程中的两门课程\n\n");P=course;printf("课程编号课程名称\t课程学分年级\t 专业已选人数上限\n");W=fopen("课程信息文件","rb");for (i=0;i<SIZE1;i++){fread(&course[i],sizeof(struct course),1,W);printf("%d\t%8s\t %d \t%8s\t%8s\t%d \t%d\n",P[i].num,P[i].name,P[i].score,P[i].nianji,P[i].zhuanye,P[i].yixuan,P[i].shangxian);}fclose(W);xuanke();}void chakanc()//查看已选课程{switch(m){case(0):break;case(1):printf("你选择了1.< dianlu >");break;case(2):printf("你选择了2.< Cyuyan >");break;case(3):printf("你选择了3.< xiandai >");break;case(4):printf("你选择了4.< daxuewuli >");break;case(5):printf("你选择了5.< dianji >");break;case(6):printf("你选择了6.< heike >");break;case(7):printf("你选择了7.< wangye >");break;}switch(n){case(0):break;case(1):printf("和1.< dianlu >\n");break;case(2):printf("和2.< Cyuyan >\n");break;case(3):printf("和3.< xiandai >\n");break;case(4):printf("和4.< daxuewuli >\n");break;case(5):printf("和5.< dianji >\n");break;case(6):printf("和6.< heike >\n");break;case(7):printf("和7.< wangye >\n");break;}}void delcourse()//删除课程{int i;chakanc();restart:printf("请输入你要删除的课程编号:");scanf("%d",&i);if(i==m)switch(m){case(0):break;case(1):m=0;printf("你删除了1.< dianlu >");break;case(2):m=0;printf("你删除了2.< Cyuyan >");break;case(3):m=0;printf("你删除了3.< xiandai >");break;case(4):m=0;printf("你删除了4.< daxuewuli >");break;case(5):m=0;printf("你删除了5.< dianji >");break;case(6):m=0;printf("你删除了6.< heike >");break;case(7):m=0;printf("你删除了7.< wangye >");break;}else if(i==n)switch(n){case(0):break;case(1):n=0;printf("你删除了1.< dianlu >");break;case(2):n=0;printf("你删除了2.< Cyuyan >");break;case(3):n=0;printf("你删除了3.< xiandai >");break;case(4):n=0;printf("你删除了4.< daxuewuli >");break;case(5):n=0;printf("你删除了5.< dianji >");break;case(6):n=0;printf("你删除了6.< heike >");break;case(7):n=0;printf("你删除了7.< wangye >");break;}else{printf("警示:请输入正确的课程编号\n");goto restart;}}void k1course()//课程列表目录{int i;if (a>0&&a<=10){printf("\t\t\t请选择你要进入的项目\n");printf("1.查看可选课程\n");printf("2.课程选择\n");printf("3.查看已选课程\n");printf("4.删除课程\n");printf("5.返回到主菜单\n");printf("请选择:");scanf("%d",&i);switch (i){case(1):filecourse();break;case(2):k2course();break;case(3):chakanc();break;case(4):delcourse();break;case(5):zhucaidan();break;}}elseprintf("请输入正确的学号");}void zchoose()//输入基本的选课所需要的信息{system("cls");printf("\t\t\t学生选课\n");printf("请输入你的学号:");scanf("%d",&a);printf("请输入你的姓名:");scanf("%s",s);k1course();}void main()//主函数{int i;while (1){zhucaidan();scanf("%d",&i);if (i<0||i>4)printf("警示:请输入正确的菜单选项\n");switch (i){case(1):zcourse();break;case(2):zstudent();break;case(3):zchoose();break;case(4):{printf("\n\t\t\t谢谢使用本选课系统\n");printf("\n\t\t\t\t\t制作人:熊林杨云龙程星吴傲寒\n");exit(1);}}}}。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C++课程设计报告专业:学号:姓名:同组人:提交日期:【设计目的】1、通过设计一个较为简单的《商场库存货物管理系统》,进一步熟悉C++中类的概念、类的封装、继承的实现方式。

2、了解系统开发的需求分析、类层次设计、模块分析、编码测试、模块组装与整体调试的全过程,加深对C++的理解与Visual C++环境的使用;逐步熟悉程序设计的方法,并养成良好的编程习惯。

【设计内容】1、设计某公司的库存管理系统。

此程序是为了更好的处理货物的详细信息。

包括货物的货物的入库、出库、查询、统计。

并且能够很好的让使用者了解库存货物的有关信息。

2、系统要求能够按编号显示、查找、增加、删除、和保存各类货物的信息。

输入和输出货物的有关信息并且对输入保存文件里确定程序至少具备以下功能:查询模块、增加模块、删除模块、货物的有关信息数据存盘等的基本模块。

3、系统具有“货物的有关信息数据存盘”的功能,所以货物的有关信息数据可以保存到磁盘文件,那么也就意味着今后可以从磁盘文件读出货物的有关信息,可以方便用户使用,避免数据重复录入,考虑到系统实现简洁,货物数据文件采用文本文件,货物数据文件名:date.dat。

4、作为一个完整的系统,除了具有增加货物,删除货物的信息模块,还应该具有修改货物相关信息的功能,所以本系统具备了“商品入库”、“商品出库”、“查询统计”、“商品报损”、“退出系统”,这5个基本功能,就可以以最简捷的方式实现对货物的管理,也就实现了系统的要求。

5、下图中黑体字部分程序块为我完成的代码块【实验环境】1.硬件环境:(1)电脑型号戴尔 Inspiron 5557 笔记本电脑 (扫描时间:2017年01月11日)(2)操作系统Windows 10 Enterprise 64位 ( DirectX 12 )(3)处理器英特尔 Core i7-6500U @ 2.50GHz 双核(4)主板戴尔 03XTY7 ( 英特尔 PCI 标准主机 CPU 桥 - 100 Series 芯片组Family/eSPI Controller - 9D48 )(5)内存8 GB ( 镁光 DDR3L 1600MHz )(6)主硬盘三星 SSD 850 EVO 500GB ( 500 GB / 固态硬盘 )(7)显卡Nvidia GeForce 930M ( 4 GB )(8)显示器友达 AUO38ED ( 15.3 英寸 )2.软件环境:Windows 10 Enterprise 64位 ( DirectX 12 )、Visual Studio 2015【设计中使用函数说明】(1)char manage::first_face()//首页:该函数是该系统的首页。

(2)void manage::in_cangku()//入库函数:该函数是将商品信息录入到文件中。

(3)void manage::out_cangku()// 出库函数:该函数将商品信息读取后找到用户想要出库的商品然后进行商品报损。

(4)void manage::find_property()//查询函数:该函数用于让用户选择自己想要的查询商品的方式:俺商品名称查询、按商品价格查询、按商品价格查询。

(5)void manage::find_name()//按商品名称查询:该函数会读取用户输入的商品名称,然后打开存储文件找到该商品并显示在屏幕上。

(6)void manage::find_price()//按商品价格查询:该函数会读取用户输入的商品价格,然后打开存储文件找到该商品并显示在屏幕上。

(7)void manage::find_kind()//按大类查询该函数会读取用户输入的商品大类,然后打开存储文件找到该商品并显示在屏幕上。

(8)void manage::call_break()//商品报损函数:该函数将商品信息读取后找到用户想要报损的商品然后进行商品报损【测试结果】1.商场库存货物管理系统首页2.商品入库3.商品查询4.按商品名查询5.按商品价格查询6.按商品大类查询7.商品报损【设计总结】经过一个学期对《C++程序设计》的学习,我学习到了基本的理论知识,了解到了C++语言程序设计的思想,这些知识都为我的课程实践和进一步的学习打下了坚实的基础。

在为期近一周的C++课程设计中,我体会颇多,学到了很多东西。

我加强了对C++程序设计这门课程的认识,并且复习了自己以前学习到的知识。

这些都使得我对计算机语言的学习有了更深入的认识!总之,通过这次课程设计,我收获颇丰,相信会为自己以后的学习和工作带来很大的好处。

像职工信息表这样的程序设计,经历了平时在课堂和考试中不会出现的问题和考验。

而这些问题,这并不是我们平时只靠课本,就可以轻易解决的。

所以,锻炼了我们挑战难题,学会用已掌握的知识去解决具体问题的能力,进一步培养了独立思考问题和解决问题的能力。

特别是学会了在Visual C++中如何调试程序的方法。

当然,老师的指导和同学的帮助也是不可忽视的,他们给了我许多提示和帮助,教会了我编译复杂程序的方法。

在老师和同学的帮助下,通过自己的努力,终于完成了这次职工信息表的简单课程设计。

我经过这段时间的编程,对其中的艰辛,我是深有体会。

从刚开始的选择程序、理解程序到后来的调试程序以及改进程序这个过程中,我遇到了各种各样的困难和挫折。

但是我坚定信念,对自己充满了信心,想尽一切办法克服重重困难。

通过课程设计的训练,我进一步学习和掌握了对程序的设计和编写,从中体会到了面向对象程序设计的方便和巧妙。

懂得了在进行编写一个程序之前,要有明确的目标和整体的设计思想。

另外某些具体的细节内容也是相当的重要。

这些宝贵的编程思想和从中摸索到的经验都是在编程的过程中获得的宝贵财富。

这些经验对我以后的编程会有很大的帮助的,我要好好利用。

虽然这次课程设计是在参考程序的基础之上进行的,但是我觉得对自己是一个挑战和锻炼。

我很欣慰自己能在程序中加入自己的想法和有关程序内容,也就是对它的程序改进了一番改进,并有创新。

但是我感觉自己的创新还不够典型,总之还不是很满意。

另外由于时间的紧迫和对知识的了解不够广泛,造成了系统中还存在许多不足,功能上还不够完善。

以后我会继续努力,大胆创新,争取能编写出透射着自己思想的程序。

这次课程设计让我充分认识到了自己的不足,认识到了动手能力的重要性。

我会在以后的学习中更加努力锻炼自己,提高自己,让自己写出更好更完善的程序,为以后的编程打好基础!【参考文献】[1] Bjarne Stroustrup, THE C++ PROGRAMMING LANGUAGE, Higher Education Press Pearson Education,2002[2] [美]Walter Savitch著,周靖译,C++面向对象程序设计——基础、数据结构与编程思想,清华大学出版社,2004[3] [美]Brian Overland著,董梁等译,C++语言命令详解,电子工业出版社,2000[4] [美]AI Stevens著,林瑶等译,C++大学自学教程,电子工业出版社,2004[5] 刁成嘉主编,面向对象C++程序设计,机械工业出版社,2004[6] 刘瑞新主编,曹建春,沈淑娟,张连堂等编著,Visual C++面向对象程序设计程,机械工业出版社,2004【源程序清单】//list.h//首页char manage::first_face(){system("cls");cout << endl;cout << endl <<"\t\t◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆"<< endl <<"\t\t◆◆"<< endl <<"\t\t◆商场库存货物管理系统◆"<< endl <<"\t\t◆◆"<< endl <<"\t\t◆ 1. 商品入库◆"<< endl <<"\t\t◆◆"<< endl <<"\t\t◆ 2. 商品出库◆"<< endl <<"\t\t◆◆"<< endl <<"\t\t◆ 3. 查询统计◆"<< endl <<"\t\t◆◆"<< endl <<"\t\t◆ 4. 商品报损◆"<< endl <<"\t\t◆◆"<< endl <<"\t\t◆ 5. 退出系统◆"<< endl <<"\t\t◆◆"<< endl <<"\t\t◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆"<< endl << endl <<"\t\t";return _getch();//入库void manage::in_cangku(){system("cls");string name;//商品名double price;//价格int store_Number;//仓库编号string dalei;//商品大类int shelf_Number;//货架号long quantity = 0; //商品数量cout << endl <<"商品入库,请输入相关信息: "<< endl << endl;cout <<"\t商品名称: ";cin >> name;cout << endl <<"\t商品价格: ";cin >> price;cout << endl <<"\t商品数量: ";cin >> quantity;cout << endl <<"\t仓库编号: ";cin >> store_Number;cout << endl <<"\t商品大类: ";cin >> dalei;cout << endl <<"\t货架编号: ";cin >> shelf_Number;ofstream storeFile("store.txt", ios::app);//ofstream类“写”,storeFile对象.//ios::app—写入的数据将被追加在文件的末尾,此方式使用ios::outstoreFile << setiosflags(ios::left) << setw(20) << name <<" "<< setw(15) << price <<" "<< setw(10) << quantity <<" "<< setw(10) << store_Number <<" "<< setw(20) << dalei <<" "<< shelf_Number << endl;//setiosflags(ios::left)左对齐输出storeFile.close();cout << endl << endl <<"\t该商品已经入库......."<< endl << endl <<"\t";system("pause");//暂停// 出库void manage::out_cangku(){system("cls");string name;//商品名cout << endl <<"\t商品出库,输入出库商品信息: "<< endl << endl;cout <<"\t商品名称: ";cin >> name;ifstream storeFile("store.txt");//ifstream类“读”if (!storeFile)//打开失败{ofstream storeFile1("store.txt");//“写”storeFile1.close();cout << endl << endl <<"\t仓存为空!!!!"<< endl << endl <<"\t";system("pause");return;}bool flag = false;string name_1;//商品名double price_1;//价格int store_Number_1;//仓库编号string dalei_1;//商品大类int shelf_Number_1;//货架号long quantity_1 = 0; //商品数量ofstream tempFile("temp.txt");//“写”临时文件while (storeFile >> name_1 >> price_1 >> quantity_1 >> store_Number_1 >> dalei_1 >> shelf_Number_1){if (name_1 == name)flag = true;else{tempFile << setiosflags(ios::left) << setw(8) << name_1 <<" "<< setw(5) << price_1 <<" "<< setw(8) << quantity_1 <<" "<< setw(5) << store_Number_1 <<" "<< setw(10) << dalei_1 <<" "<< shelf_Number_1 << endl;}}tempFile.close();storeFile.close();if (!flag)//“1”打开失败{cout << endl << endl <<"\t仓库中没有这种商品!!!"<< endl << endl <<"\t";system("pause");return;}ofstream storeFile1("store.txt");//“写”ifstream tempFile1("temp.txt");//“读”storeFile1 << tempFile1.rdbuf();//将tempFile1流对象中的流重定向到storeFile1上,实现替换.storeFile1.close();tempFile1.close();cout << endl <<"\t这些商品已经出库, 请仔细检查!!!"<< endl << endl <<"\t";system("pause");}//查询void manage::find_property(){while (1){system("cls");cout << endl << endl;cout <<"\t============================================================="<< endl <<"\t|| ||"<< endl<<"\t|| 商品查询||"<< endl<<"\t|| ||"<< endl<<"\t|| 1. 按商品名称查询||"<< endl<<"\t|| ||"<< endl<<"\t|| 2. 按商品价格查询||"<< endl<<"\t|| ||"<< endl<<"\t|| 3. 按大类查询||"<< endl<<"\t|| ||"<< endl<<"\t|| 4. 返回||"<< endl<<"\t|| ||"<< endl<<"\t============================================================="<< endl << endl <<"\t\t";char select = _getch();switch (select){case'1':find_name();break;case'2':find_price();break;case'3':find_kind();break;case'4':return;//跳出函数default:break;}}}//按商品名称查询void manage::find_name(){system("cls");cout << endl <<"\t按商品名查询: "<< endl << endl;cout <<"\t输入商品名: ";string name;cin >> name;string name_1;//商品名double price_1;//价格int store_Number_1;//仓库编号string dalei_1;//商品大类int shelf_Number_1;//货架号long quantity_1 = 0; //商品数量ifstream storeFile("store.txt");//“读”if (!storeFile)//打开失败{cout << endl << endl <<"\t对不起,你的库存为空!!!"<< endl << endl <<"\t";system("pause");return;}bool flag = false;cout << endl <<"商品名"<<"价格"<<"商品数量"<<"仓库编号"<<"商品大类"<<"货架号"<< endl << endl;while (storeFile >> name_1 >> price_1 >> quantity_1 >> store_Number_1 >> dalei_1 >> shelf_Number_1){if (name_1 == name){flag = true;cout << setiosflags(ios::left) << setw(8) << name_1 <<" "<< setw(5) << price_1 <<" "<< setw(8) << quantity_1 <<" "<< setw(5) << store_Number_1 <<" "<< setw(10) << dalei_1 <<" "<< shelf_Number_1 << endl;}}storeFile.close();if (!flag)cout << endl << endl <<"对不起,库存中没有这种商品!!!";cout << endl << endl;system("pause");}//按商品价格查询void manage::find_price(){system("cls");cout << endl <<"\t按商品价格查询: "<< endl << endl;cout <<"\t输入价格: ";double price;cin >> price;string name_1;//商品名double price_1;//价格int store_Number_1;//仓库编号string dalei_1;//商品大类int shelf_Number_1;//货架号long quantity_1 = 0; //商品数量ifstream storeFile("store.txt");//“读”if (!storeFile){cout << endl << endl <<"\t对不起,你的库存为空!!!"<< endl << endl <<"\t";system("pause");return;}bool flag = false;cout << endl <<"商品名"<<"价格"<<"商品数量"<<"仓库编号"<<"商品大类"<<"货架号"<< endl << endl;while (storeFile >> name_1 >> price_1 >> quantity_1 >> store_Number_1 >> dalei_1 >> shelf_Number_1){if (price_1 == price){flag = true;cout << setiosflags(ios::left) << setw(8) << name_1 <<" "<< setw(5) << price_1 <<" "<< setw(8) << quantity_1 <<" "<< setw(5) << store_Number_1 <<" "<< setw(10) << dalei_1 <<" "<< shelf_Number_1 << endl;}}storeFile.close();if (!flag)cout << endl << endl <<"对不起,库存中没有这个价格的商品!!!";cout << endl << endl;system("pause");}//按大类查询void manage::find_kind(){system("cls");cout << endl <<"\t按商品大类查询: "<< endl << endl;cout <<"\t输入大类名: ";string dalei;cin >> dalei;string name_1;//商品名double price_1;//价格int store_Number_1;//仓库编号string dalei_1;//商品大类int shelf_Number_1;//货架号long quantity_1 = 0; //商品数量ifstream storeFile("store.txt");//“读”if (!storeFile){cout << endl << endl <<"\t对不起,你的库存为空!!!"<< endl << endl <<"\t";system("pause");return;}bool flag = false;cout << endl <<"商品名"<<"价格"<<"商品数量"<<"仓库编号"<<"商品大类"<<"货架号"<< endl << endl;while (storeFile >> name_1 >> price_1 >> quantity_1 >> store_Number_1 >> dalei_1 >> shelf_Number_1){if (dalei_1 == dalei){flag = true;cout << setiosflags(ios::left) << setw(8) << name_1 <<" "<< setw(5) << price_1 <<" "<< setw(8) << quantity_1 <<" "<< setw(5) << store_Number_1 <<" "<< setw(10) << dalei_1 <<" "<< shelf_Number_1 << endl;}}storeFile.close();if (!flag)cout << endl << endl <<"对不起,库存中没有这类商品!!!";cout << endl << endl;system("pause");}//商品报损void manage::call_break(){system("cls");string name;//商品名cout << endl <<"\t商品报损,请输入要报损商品信息: "<< endl << endl;cout <<"\t商品名称: ";cin >> name;ifstream storeFile("store.txt");//“读”if (!storeFile){ofstream storeFile1("store.txt");//“写”storeFile1.close();cout << endl << endl <<"\t仓存为空!!!!"<< endl << endl <<"\t";system("pause");return;}bool flag = false;string name_1;//商品名double price_1;//价格string dalei_1;//商品大类string shelf_Number_1;//货架号long quantity_1 = 0; //商品数量ofstream tempFile("temp.txt");//“写”string store_Number_1;//仓库编号cout << endl << endl <<"你想报损商品信息如下: "<< endl << endl;cout << endl <<"商品名"<<"价格"<<"商品数量"<<"仓库编号"<<"商品大类"<<"货架号"<< endl << endl;while (storeFile >> name_1 >> price_1 >> quantity_1 >> store_Number_1 >> dalei_1 >>shelf_Number_1){if (name_1 == name){flag = true;cout << setiosflags(ios::left) << setw(8) << name_1 <<" "<< setw(5) << price_1 <<" "<< setw(8) << quantity_1 <<" "<< setw(5) << store_Number_1 <<" "<< setw(10) << dalei_1 <<" "<< shelf_Number_1 << endl;shelf_Number_1 +="(损坏)";}tempFile << setiosflags(ios::left) << setw(8) << name_1 <<" "<< setw(5) << price_1 <<" "<< setw(8) << quantity_1 <<" "<< setw(5) << store_Number_1 <<" "<< setw(10) << dalei_1 <<" "<< shelf_Number_1 << endl;}tempFile.close();storeFile.close();if (!flag){cout << endl << endl <<"对不起,仓库中没有这种商品!!!"<< endl << endl;system("pause");return;}ofstream storeFile1("store.txt");//“写”ifstream tempFile1("temp.txt");//“读”storeFile1 << tempFile1.rdbuf();//将tempFile1流对象中的流重定向到storeFile1上,实现替换.storeFile1.close();tempFile1.close();cout << endl << endl <<"这些商品已经损坏,请尽快从仓库中取出!!!"<< endl << endl;cout <<"报损成功,记录已经更改!!!"<< endl << endl;system("pause");}。

相关文档
最新文档