精华内容
下载资源
问答
  • 摘 要 - 1 - 目 录 - 2 - 课程设计任务书 - 3 - 第一章 绪论 - 5 - 1.1 课程设计的目的 - 5 - 1.2 课程设计的背景和意义 - 5 - 1.3 课程设计环境 - 5 - 第二章 需求分析 - 6 -
  • 这是一个手机通讯录系统,运行时具有一般手机的通讯界面,添加联系人,删除联系人,查找联系人,联系人的排列方式等,难度适中,容易看懂,并且在此基础上适合自己进一步的发挥》》》
  • 海南大学 C 语言程序课程设计报告 学号 20120602310048 姓名 隆艳萍 年级 2012 级 学院 经济与管理 专业 信息管理与信息系统 分数 1 通讯录管理系统 一需求分析 设计题目及要求 建立通讯录信息信息包含姓名籍贯电话...
  • C语言课程设计报告-电子投票 系统 PAGE PAGE # 作者: 日期: C语言课程设计报告 电子投票系统 学 院 专 业 年 级 姓 名 学 号 教 师 年 月曰 广东工业大学计算机学院制 一 ?设计题目 电子投票系统 二.课程设计目的 ...
  • C语言程序设计 课程设计报告

    千次阅读 多人点赞 2020-06-17 17:39:14
    C语言程序设计课程设计报告 一、 系统简介 学生成绩管理系统简介:一个简易的学生成绩管理系统,它包括并可以实现:“录入并保存学生信息、打印学生信息、读取学生信息、查找学生信息、删除学生信息、修改学生信息、...

    C语言程序设计课程设计报告

    一、 系统简介

    学生成绩管理系统简介:一个简易的学生成绩管理系统,它包括并可以实现:“录入并保存学生信息、打印学生信息、读取学生信息、查找学生信息、删除学生信息、修改学生信息、排序学生信息、退出系统 ”等功能,此系统需要使用者准确录入学生信息,已达到高效的工作需求。

    二、 设计要求
    本次课程设计要求用C语言编程实现一个小型的学生成绩管理系统,每个结构的数据可以包括学号、姓名、平时成绩、作业成绩和期末成绩等。
    程序采用简单菜单驱动方式,屏幕上显示菜单如下:
    1— 录入并保存学生信息
    2— 打印学生信息
    3— 读取学生信息
    4— 查找学生信息显示
    5— 删除学生信息
    6— 修改学生信息
    7— 排序学生信息
    8— 退出系统
    由两个同学组成一组分工合作完成本次课程设计。本人的主要工作包括如下内容:
    1-录入并保存学生信息
    2-读取学生信息
    3-查找学生信息显示
    4-删除学生信息

    三、 程序流程图
    (此部分要求画出系统的主要功能图,自己所负责具体功能模块的流程图)

    在这里插入图片描述

    四、 程序源代码
    (要求程序中要有注释,培养规范化编程习惯)
    部分代码参考

    	#include<stdio.h>
    	#include<conio.h>//getch的头文件
    	#include<stdlib.h>//system的头文件 
    	#include<string.h>
    	//定义一个学生 
    	typedef struct TagStudent
    	{ 
    	    int Num;//学号 
    		char Name[20];//姓名 
    		float Ascore;//平时成绩 
    		float Hscore;//作业成绩 
    	    float Tscore;//考试成绩
    		float total;//总成绩 
    	    struct TagStudent *next;//next指针变量 ,指向结构体变量 
    	}Student;
    
    	Student *head=NULL;
    	void Menu();
    	void InputStudent();
    	void PrintStudent();
    	void ReadStudent(); 
    	void SearchStudent();
    	void DeleteStudent();
    	void ChangStudent();
    	void SortStudent();
    	void sortStrArr(Student *list, int n);
    	
    	int main()
    	{
    		Menu();
    		while(1)
    		{   
    			//	读取一个字符 
    		char ch=getch(); 
    			//打印菜单 
    			if (ch!= '2')
    			{
    				system("cls");
    				Menu();
    				
    			} 
    			switch(ch)
    			 {
    				case '1'://录入学生信息 
    					InputStudent();
    					break;	
    				case '2'://打印学生信息
    					PrintStudent(); 
    					break;
    				case '3'://浏览学生信息
    					ReadStudent(); 
    						break;
    				case '4'://查找学生信息 
    					SearchStudent();
    					break;
    				case '5'://删除学生信息 
    					DeleteStudent();
    					break;	
    				case '6'://修改学生信息 
    					ChangStudent();
    					break;	
    				case '7'://排序学生信息 
    				    SortStudent();
    					break;	
    				case '0'://退出系统 
    					printf("欢迎下次使用."); 
    					return 0;
    					break;				
    			}			
    		}
    		return 0;
    	} 
    
    	void Menu()
    	{
    		
    			printf("========欢迎使用学生成绩管理系统=======\n");//\t表示制表符
    			printf("***************************************\n");
    			printf("*\t    请选择功能列表            *\n");     
    			printf("***************************************\n");
    			printf("*\t    1.录入并保存学生信息      *\n");
    			printf("*\t    2.打印学生信息            *\n");
    			printf("*\t    3.读取学生信息            *\n");	
    			printf("*\t    4.查找学生信息            *\n");	
    			printf("*\t    5.删除学生信息            *\n");
    			printf("*\t    6.修改学生信息            *\n");
    			printf("*\t    7.排序学生信息            *\n");
    			printf("*\t    0.退出系统                *\n");
    			printf("***************************************\n");
    		
    	
    			
    	}
    
    //创建一个保存链表
    
    	Student *savestudent(Student *p)
    	{
    		Student *head=p;
    		FILE *fp=fopen("E:\\student.txt","w");
    		if(fp==NULL)
    		{
    			printf("打开文件失败\n");
    			return NULL;
    		}
    		//写入数据 
    		while(head!=NULL)
    		{
    			fprintf(fp,"%d %s %.2f  %.2f  %.2f\n",head->Num,
    													head->Name,
    													head->Ascore,
    													head->Hscore,
    													head->Tscore);	
    			head=head->next; 
    		}
    		fclose(fp);	
    		return p;
    	}
    
    //录入学生信息
    
    void InputStudent()
    	{		
    	
    		Student* p=head;//当前节点 
    		//找到尾节点 
    		while(head!=NULL&&p->next!=NULL)
    		{
    			p=p->next; 
    		}
    		//定一个新节点
    		Student *NewNode=(Student*)malloc(sizeof(Student));
    		NewNode->next=NULL;
    	
    		if(head==NULL)
    		{
    			head=NewNode;
    		}
    		else{
    			p->next=NewNode; 
    		}
    		printf("\n请输入学生信息\n ");
    		//输入新的学元数据 
    		printf("         学号:");
    		scanf("%d", &NewNode->Num);
    		printf("         姓名:");
    		scanf("%s", NewNode->Name);
    		printf("     平时成绩:");
    		scanf("%f", &NewNode->Ascore);
    		printf("     作业成绩:");
    		scanf("%f", &NewNode->Hscore);
    		printf("     考试成绩:");
    		scanf("%f", &NewNode->Tscore);
    		FILE *fp=fopen("E:\\student.txt","a");
    		if(fp==NULL)
    		{
    			printf("打开文件失败\n");
    			return ;
    		}
    		//写入数据 
    		while(p!=NULL)
    		{
    			fprintf(fp,"%d %s %.2f  %.2f  %.2f\n",p->Num,
    												p->Name,
    												p->Ascore,
    												p->Hscore,
    												p->Tscore);	
    			p=p->next; 
    		}
    		fclose(fp);		
    		printf("学生信息录取并保存成功!\n");
    	}
    
    // 创建生成链表并返回 
    Student *createLine(FILE *fp)
    {
    	Student *head, *p1, *p2;
    	p1 = p2 = (Student*) malloc(sizeof(Student));//开辟一个新单元 
    	head = p1;
    	
    	while(!feof(fp))//feof(fp)文件未结束输出0 
    	{
    		fscanf(fp,"%d%s%f%f%f\n",&p1->Num,
    								p1->Name,
    								&p1->Ascore,
    							    &p1->Hscore,
    							 	&p1->Tscore);
    		p2 = p1;
    		p1 = (Student*) malloc(sizeof(Student));
    		p2->next = p1;
    		
    	}
    	if (head->Name[0] == '\0') head = NULL;
    	else p2->next = NULL;
    	return head;
    }
    
    // 从文件读取数据并生成返回链表 ,从文件中获取数据生成链表并返回链表的头指针 
    
    	Student *readFiles()
    	{
    		Student *head;
    		FILE *fp = fopen("E:\\student.txt", "r");
    	    if(fp == NULL)
    	    {
    	        printf("打开文件失败!");
    	        return NULL;
    	    }
    	    head = createLine(fp);
    		fclose(fp);
    		return head;
    	} 
    	
    	//读取学生信息
    	void ReadStudent()
    	{ //打开文件
    	 
    	 Student *p = readFiles();
    	printf("学号\t姓名\t平时成绩\t作业成绩\t考试成绩\n");
    	 while(p!=NULL) 
    		{
    			printf("%d   \t%s    \t%.2f      \t%.2f      \t%.2f      \n", 
    		 												p->Num,
    														p->Name,
    														p->Ascore,
    														p->Hscore,
    														p->Tscore);				
    			p=p->next;
    		}
    	}
    	//查找学生信息
    	void SearchStudent()
    	{
    		Student *p = readFiles();
    		char searchname[10];//空的字符数组; 
    		printf("\n请输入你要查找的学生名字:");
    		scanf("%s",searchname); 
    		while(strcmp(p->Name,searchname)!=0)
    		{
    			if(p->next==NULL)
    			{
    				printf("没有此学生的信息\n");
    				return ;
    			}
    			p=p->next;	 
    		}
    		printf(" 学号:\t姓名:\t平时成绩:\t作业成绩:\t考试成绩:\n");
    		printf("  %d   \t%s       %.2f          %.2f           %.2f      \n", 
    		p->Num,
    		p->Name,
    		p->Ascore,
    		p->Hscore,
    		p->Tscore);            
    	}
    

    五、 运行结果及分析
    (要求有程序运行结果截图和相应的分析)
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述

    六、 设计总结
    (详述本次调试程序所取得的经验。如果程序未能通过,应分析其原因。)
    学生成绩管理系统是一个十分强大的管理系统,起初刚开始做课程设计时,以为这个课设不会有多难,不过是把多个函数组合起来就好了,但是,经过这两星期的编程,发现要完整把程序按照要求编出来是一件很不容易的事情。在学习中,也对C语言有更加的了解。在整个编程过程中,可以说遇到了很多难题,在书和同学的
    帮助下最后解决了这些问题,,我觉编写程序需要很大的耐心,当然细心也很需要,在编程的过程中有很多错误都是自己的粗心造成的,。这次的课程设计也是一次很好的对自我的检查,使我受益匪浅!
    参考资料

    1. C程序设计(第四版),谭浩强,清华大学出版社,2010年
    2. C程序设计(第四版)学习辅导,谭浩强,清华大学出版社,2010年
      完整代码和报告见链接:https://download.csdn.net/download/qq_45772158/12530461
    展开全文
  • 完全的C语言课程设计,WORD版,可以直接打印出来就可以交!还附带程序清单,直接可以拿到程序里面就可以运行!非常的好!
  • C语言程序设计 课程设计报告 2015 2016学年 第 3 学期 姓 名: :号学 : 系院 :专 业 : 班级 :指导教师 孙金华 : 绩成 计算机与信息工程学院 月7年2016 目 录 1. 课程设计的目的与要求 . 2. 方案实现与调试 . 2.1掷...
  • 西安郵電學院 C语言课程设计报告 题目 宿舍管理系统 院系名称 计算机学院 专业名称 网络工程 班 级 1004 学生姓名 李斯良 学号8位 04102109 (17 ) 指导教师 刘霞林 设计起止时间 2011年6月13日~2011年6月22日 课程...
  • 名师精编 优秀教案 C 语言程序设计课程教案 课题 C 语言概述 课型 新授课 授课日期 课时 2 1了解 C语言的特点 教学目的 2掌握 C简单程序的结构 3熟练掌握 C程序的编辑编译链接和运行的过程 教学重点 C 语言的特点与...
  • 长江大学 C语言程序设计课程设计 实习报告 题 目: 学生成绩管理系统 姓 名 陈桥 学 院 计算机科学学院 专 业 教育技术学 班 级 教技11001 学 号 201003885 指导教师 马老师康老师 2011年12月19日 目录 设计目的 TOC ...
  • C 语言课程设计报告 C语言课程设计报告 贪 吃 蛇 专 业 学生姓名 班 级 学 号 完成日期 C 语言课程设计报告 一游戏规则需求 1 在打开程序后出现选择界面里面包含难度选择其中难度选择能够使程序出现相应 的游戏难度 ...
  • 计算机学院c 计算机学院c课程设计课程设计报告 PAGE PAGE # 计算机学院c 计算机学院c课程设计课程设计报告 PAGE PAGE # 学号 2015-2016学年 第二学期 C语言程序设计 课程设计报告 题目 掷骰子游戏 专业 计算机科学与...
  • C语言课程设计报告15131.doc《C语言程序设计》课程设计2011— 2012学年第一学期设计题目 个人所得税计算学生姓名 XXX学 号 XXXXXX专业班级 电子XX班2011年12月28日设计任务书一、题目与要求设计一个人所得税计算程序...

    C语言课程设计报告15131.doc

    《C语言程序设计》

    课程设计

    2011— 2012学年第一学期

    设计题目 个人所得税计算

    学生姓名 XXX

    学 号 XXXXXX

    专业班级 电子XX班

    2011年12月28日

    设计任务书

    一、题目与要求

    设计一个人所得税计算程序。规定:1000元以下不收所得税,1000到1500元之间部分收5%,1500到2000元之间部分收10%,2000到2500元之间的部分收15%,2500元以上收20%。要求具备欢迎界面,对应月收入分为6个选项,进入下级菜单后月收入由键盘输入,输出个人收入所得税。要求如下:

    1、用C语言实现程序设计;

    2、系统的各个功能模块要求用函数的形式实现;

    3、界面友好(良好的人机交互),程序加必要的注释。

    4、流程图、主要源程序代码、测试情况(拷屏)及调试中问题与解决方案。

    二、本任务涉及的知识点

    1、输入函数:

    1)函数原形:scanf(“%d”,&*)

    2) 功 能: scanf()函数利用取地址符号&完成对程序中某个变量的赋值,进而程序中判断循环的功能。

    3)变量及类型:

    float income,tax; 实型变量,接收main()传过来的随机数字;

    int x; 整型变量,接收main()传过来的随机数字。

    4)说 明:输入字符后需要按回车键,待系统做出判断后往下执行。

    5)模块代码及其相关注释

    printf("\t请输入你要进行操作的编号(0~5),以回车键结束:\n\t");

    scanf("%d",&x); /*从键盘输入*/

    2、输出函数:

    1)函数原形:printf(“**********”,*)

    2)功 能:输出相关提示信息及最后结果。

    3)说 明:输出时要把要输出的信息用双引号括起来,输出数字时要在其代表变量前加逗号。

    4)模块代码及其相关注释:

    printf("\t请输入你的收入金额:");

    scanf("%f",&income);

    tax=income*0.05; /*税收计算公式*/

    printf("\t您需要缴税:%.2f元\n",tax); /*输出你的税收*/

    3、if语句:是用来判定所给定的条件是否满足,根据判定的结果(真或假)执行给出的两种操作之一;

    if(x==1)

    {printf("\t请输入你的收入金额:");} /*当x==1时,执行printf输出函数*/

    else if(x==2)

    {printf("\t请输入你的收入金额:");} /*同上*/

    4、Goto:转向语句;

    5、Return:从函数返回语句;

    另外还有变量的定义、main主函数的使用等

    三、设计流程图

    四、程序代码设计

    #include

    main()

    {

    float income,tax;

    int x;

    printf("\t ************ 欢迎 ************ \n");

    printf("\t◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆\n");

    printf("\t◆ 欢迎进入个人税务系统 ! ◆\n");

    printf("\t◆------------------------------------------------◆\n");

    printf("\t◆ 姓名 ◆\n");

    printf("\t◆------------------------------------------------◆\n");

    printf("\t◆ 2011年12月26日 ◆\n");

    printf("\t◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆\n");

    printf("\n");

    loop:

    printf("\t 欢迎进入个人税务系统 \n");

    printf("\t ==================== \n");

    printf("\t 1.1000元以下; ┊ 4.2000到2500元之间; \n");

    print

    展开全文
  • 电子通讯录 管理系统 程序 C语言 版 电子通讯录 管理系统 程序 C语言 版 电子通讯录 管理系统 程序 C语言 版 这是个详细的课程设计报告!!!!!!!!!!!
  • 里面有很多个由C语言编写的程序,也与流程图,需要的人可以下看看。
  • 本文档是C语言的期末课程设计报告,内容为商品订购系统
  • C语言程序设计课程自评汇报 辽宁对外经贸职业学院 7月 C语言程序设计课程自评汇报 C语言程序设计是我院信息管理专业计算机应用专业电子商务专业一门主干课程其中信息管理专业是辽宁省试点专业几年来在院各级领导关心...
  • C语言课程设计报告范例-C语言关键字识别程序设计
  • 数据结构C语言课程设计报告! 关于使用穷举法求解的,用链栈作为存储结构。该资源只是提供课程设计报告,并不提供源程序。作为一个写作模板提供。
  • C语言课程设计 C语言结课后学校要求做的论文 提供给大家参考 绝对超值哦~
  • 南京航空航天大学金城学院 C语言程序设计课程设计报告 个人通讯录系统 学号 姓名 学号 姓名 日期 目 录 HYPERLINK 一需求分析3 HYPERLINK 二程序的主要功能.3 HYPERLINK 三程序运行平台.3 HYPERLINK 四系统总框架图...
  • 课 程 设 计 课程名称 C语言程序设计课程设计 题目名称 通讯录程序设计 专业班级 20 15级计算机科学与技术1班 学生姓名 学 号 指导教师 二一六年六月二十日 蚌埠学院计算机科学与技术系课程设计任务书 课 程 C语言...
  • 小型仓库管理系统,包括入库、出库等的修改,查询等
  • C语言课程设计报告

    2012-06-29 17:03:48
    C语言程序设计课程设计报告 程序代码及算法、功能描述
  • C语言课程设计——工资管理系统,含课程设计报告以及源程序代码,课程设计报告文档中给出了详细的程序运行环境以及其他相关运行说明,在本届毕业生中,该设计获得唯一的满分成绩(无法正常运行程序的请私信)。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 834
精华内容 333
关键字:

c语言程序课程设计报告

c语言 订阅