首页技术大一c语言课程设计报告,c语言课程设计报告书写作规范

大一c语言课程设计报告,c语言课程设计报告书写作规范

编程之家2026-05-301128次浏览

各位老铁们,大家好,今天由我来为大家分享大一c语言课程设计报告,以及c语言课程设计报告书写作规范的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!

请问C语言课程设计报告摘要怎么写,是指什么啊,举个例子吧

摘要:又称概要、内容提要。摘要是以提供文献内容梗概为目的,不加评论和补充解释,简明、确切地记述文献重要内容的短文。其基本要素包括研究目的、方法、结果和结论。具体地讲就是研究工作的主要对象和范围,采用的手段和方法,得出的结果和重要的结论,有时也包括具有情报价值的其它重要的信息。

C语言课程设计,应该主要根据你的设计内容,简要地提炼出设计的背景,功能,意义等。最后给出关键字。下面是正文。

例如:

摘要(标题居中)

近年来随着计算机在社会领域的不断发展,程序设计。。。。。C语言。。。。(这里讲你做的东西的背景。)

本课程设计完成了什么。。。。(功能)

其意义是。。。。(意义)

关键词: C语言,其他

参考资料:

C语言程序设计课程设计报告怎么写啊有谁有样本吗谢啦!

实验报告一

课程 C语言程序设计实验项目 C程序设计初步成绩

专业班级学号指导教师金发夏

姓名序号实验日期

一【实验目的】

1.了解使用VC++6.0的开发环境;

2.掌握在该系统上如何编辑、编译、连接和运行一个C程序;

3.通过运行简单的C程序,初步了解C源程序的特点;

二【实验内容】

【实验1-1】输入并运行一个简单的正确程序

1)输入下面的程序

include<stdio.h>

void main()

{

printf("欢迎学习C语言程序设计!\n");

}

2).仔细观察屏幕的输入程序,检查有无错误。

3).对该程序进行编译,查看编译输出窗口,检查是否有错误,有错误需要改正错误。无错误就可以运行程序。

【实验1-2】设计一个程序,已知矩形的两条边长为3.2和1.5,求矩形的面积。

【实验1-3】求4和6的和,并在显示器上输出。然后修改程序从键盘上任意输入2个整数,并将二者的和输出。

三【实验过程】

四【实验小结】

学生成绩记录薄 c语言 课程设计报告

C语言程序设计报告

课题名称:学生成绩管理

1系统概述:

本程序为一个学生成绩管理系统,对学生的成绩进行管理,学生的信息包括学号,姓名,学期,三门课程的成绩,输入这些信息,本程序可以自动计算总成绩,可以按高分到低分进行排名,并对输入信息的人数进行汇总.

2数据结构设计:

(1)结构体;

(2)数组的设计:运用指针代替数组,使用指针来建立线性表,使程序更加简洁,可读性更强.

3各函数的设计:

函数原型:void InitList(SqLinkList&L);

功能:创建一个空的线性链表;

入口参数:L为要创建的线性链表;

出口参数:创建链表的L.head为空,L.length为0;

返回值:无;

函数原型:void EmptyLinkList(SqLinkList&L);

功能:清空整个线性链表;

入口参数:L为要清空的链表名称;

出口参数:若清空成功则链表长度L.length为0;

返回值:无;

函数原型:int ScanE(ElemType&e);

功能:输入学生信息;

入口参数:e为要输入信息的学生名称;

出口参数:e.num保存学号,e.name保存姓名,e.team保存所在学期,e.s1,e.s2,e.s3分别保存三门课程的成绩;

返回值:输入合法返回1,否则返回0;

错误处理:若学号、姓名等输入不合法会有提示及重输;

函数原型:Status SqLinkListAppend(SqLinkList&L,ElemType e);

功能:追加一个结点到线性链表中;

入口参数:e为所追加的结点名称,L为e所追加到的线性链表的名称;

出口参数:若追加成功,则e为头结点,链表长度L.length增1;

返回值:若追加成功返回1;

函数原型:Link SearchNode(SqLinkList L,int NUM);

功能:查找学号为NUM的学生;

入口参数:查找的链表名称L,学号NUM;

出口参数:若找到结点指针p指向该结点,否则指向空结点;

返回值:结点指针p;

函数原型:void SearchTeam(SqLinkList L,int team);

功能:查找学期为team的所有记录并输出其信息;

入口参数:查找的链表名称L,要查找的学期team;

出口参数:无;

返回值:无;

函数原型:void SearchUnpass(SqLinkList L,float s1,float s2,float s3);

功能:查找所有有挂科记录的学生并输出其信息;

入口参数:查找的链表名称L,要查找的各门学科成绩s1,s2,s3;

出口参数:无;

返回值:无;

函数原型:void SqLinkListSearch(SqLinkList L);

功能:对链表进行分类查找;

入口参数:要查找的链表名称L;

出口参数:无;

返回值:无;

函数原型: void inputData(SqLinkList&L);

功能:输入数据,并追加一个结点;

入口参数: L为要追加结点的链表名称;

出口参数:无;

返回值:无;

函数原型:void SqLinkListTraverse(SqLinkList L);

功能:输出链表中所有学生成绩列表;

入口参数:L为要输出信息的链表名称;

出口参数:无;

返回值:无;

函数原型:void PrintE(ElemType e);

功能:输出一个结点的所有信息;

入口参数:要输出的结点名称e;

出口参数:无;

返回值:无;

4使用程序的说明:

本程序为一个学生成绩管理系统。对学生的成绩信息进行管理,学生的信息包括学号、姓名、学期、三门课程的成绩、平均成绩、名次。本管理系统实现学生的学号、姓名、学期、每门课程的成绩的录入,并自动按平均分排名,使用时按屏幕上的提示,输入使用代码.如下图所示:

例如:输入代码数字”1”,程序执行”输入学生成绩或已存在的学生成绩进行修改”这条小程序.输入学生个人信息后,如下图所示:

如此分别输入相应的程序代码,就执行相应的程序段.

如下的程序是按学号进行成绩排名:

当输入”6”时,执行相应的程序,即汇总一共输入学生的人数:

5总结和体会:

通过对C语言学习,尤其是这学期本班开展C语言双语教学,体会到学习难的同时,也真正了解到C语言作为一门高级的计算机语言的强大功能,特别是在当今实际生活,生产,办公,信息管理等方面的强大作用.这次合作我们遇到了许多的困难。时间的紧迫,知识的不足,给我很大的压力。最终我还是还是完成了任务。团结就是力量是我这次最真切的感受。

6程序代码:

void InitList(SqLinkList&L){

//构造一个空的线性表L;

L.head= 0;//头指针为空;

L.length= 0;//长度初始为0;

}

void EmptyLinkList(SqLinkList&L){

//入口参数为整个线性表的数据,功能为清空线性表;

Node*p;

if(!L.head)printf("系统中不存在记录。\n");

//头指针为空时没有学生录入;

else{

while(L.head){

//每个循环将下一结点赋值给头指针,并释放本结点空间,直至线性表清空;

p=L.head;

L.head=p->next;

free(p);

}//end while;

L.length=0;//长度为0;

printf("该管理系统学生信息已清空。\n");

}//end else;

}

int ScanE(ElemType&e){

//输入一个学生的成绩数据结点。返回0为无效结点数据,1为有效结点数据;

printf("\n学号:");

scanf("%d",&e.num);

if(e.num==0){

//学号为0输入不合法,重新输入;

printf("学号输入不合法.\n");

return 0;

}

printf("\n姓名:");

scanf("%s",&e.name);

printf("\n学期:");

scanf("%d",&e.team);

while(e.team>12){

//系统只记录小于12的学期数;

printf("输入的学期不能大于12,请重新输入:");

scanf("%d",&e.team);

}

printf("\n成绩A:");

scanf("%f",&e.s1);

printf("\n成绩B:");

scanf("%f",&e.s2);

printf("\n成绩C:");

scanf("%f",&e.s3);

return OK;

}

Status SqLinkListAppend(SqLinkList&L,ElemType e){

//追加一个结点到线性表中;

Node*p;

p=SearchNode(L,e.num);

//查找学号为e.num的记录并将其地址赋给指针p;

if(p==0){

//若不存在添加学号相同的结点,追加一个结点;

p=(Node*)malloc(sizeof(Node));

if(!p) return ERROR;

memcpy(&(p->data),&e,sizeof(ElemType));

p->next=L.head;

L.head=p;

//追加的一个结点为首结点;

L.length++;//表长度加1;

}

else{//如果该学号记录已存在,则进行修改操作;

memcpy(&(p->data),&e,sizeof(ElemType));

printf("该学生记录已经存在,已完成修改操作。\n");

}

return OK;

}

Link SearchNode(SqLinkList L,int NUM){

//查找学生记录,该学生的学号为NUM;

Node*p;

p=L.head;//p先指在头结点;

while(p&& p->data.num!=NUM) p=p->next;

//如果该学生的学号不为NUM则查找下一个结点;

return p;

}

void SearchTeam(SqLinkList L,int team){

//按学期查找并输出所有该学期存在的记录;

Node*p;

p=L.head;

int n,sum=0;

//sum记录该学期的学生总人数;

printf("请输入您要查询的学生的学期:");

scanf("%d",&n);

printf("\n学号姓名学期成绩A成绩B成绩C平均成绩\n");

while(p&&p->next){

//如果p结点和它的下一结点不为空,且该结点的学期等于要查找学期,则格式输出所有该学期学生信息;

if(p->data.team==n){

PrintE(p->data);

sum++;

//查找到一个该学期的学生记录计数加1;

}

p=p->next;

//转向下一结点;

}//end while;

if(p->data.team==n){

//如果p的下一结点为空,且本结点学期为n,则格式输出该结点信息;

sum++;

PrintE(p->data);

}

if(sum==0)printf("没有这学期的记录。\n");

if(sum)printf("该学期共有%d人的记录.\n",sum);

}

void SearchUnpass(SqLinkList L,float s1,float s2,float s3){

//查找并输出有挂科的学生信息;

Node*p;

p=L.head;

int sum=0;

//sum计数挂科总人数,初始为0;

printf("以下是有一门以上不及格科目的学生的成绩:\n");

printf("\n学号姓名学期成绩A成绩B成绩C平均成绩\n");

while(p&&p->next){

//如果p及其下一结点为真,且该结点有一门以上科目分数低于60则输出该结点成绩并使sum计数加1;

if((p->data.s1<60)||(p->data.s2<60)||(p->data.s3<60))

{

PrintE(p->data);

sum++;

}//end if;

p=p->next;

//转到下一结点;

}//end while;

if((p->data.s1<60)||(p->data.s2<60)||(p->data.s3<60)){

//查看最后一个结点,若有挂科,sum加1并格式输出结点信息;

sum++;

PrintE(p->data);

}

if(sum==0)printf("没有不及格的记录。\n");

if(sum)printf("共有%d人的挂科记录.\n",sum);

}

void SqLinkListSearch(SqLinkList L){

//分类查找学生记录;

Node*p;

p=L.head;

int n,reg;//reg为查询方式的指令;

printf("1--按学号查询\n2--按学期查询\n3--挂科学生信息列表\n");

printf("请您输入查询方式:");

scanf("%d",®);

if(L.length){

if(reg>3)printf("对不起没有您要求的选项。\n");

//若reg>3则输入不合法;

else if(reg==1){

//reg==1按学号查询;

printf("请输入您要查询的学生的学号:");

scanf("%d",&n);

while(p&&p->next&& p->data.num!=n) p=p->next;

//当p和他下一结点为真时且结点数据不为要查找数据时转向下一结点;

if(p->data.num==n){

//找到所要查询结点,格式输出;

printf("\n学号姓名学期成绩A成绩B成绩C平均成绩\n");

PrintE(p->data);

}

else printf("没有您要查找的学号。\n");

}//end reg==1 if;

else if(reg==2)SearchTeam(L,p->data.team);

//reg==2,调用SearchTeam函数按学期查询并输出;

else if(reg==3)SearchUnpass(L,p->data.s1,p->data.s2,p->data.s3);

//reg==3,调用SearchUnpass函数,输出全部有挂科记录的学生信息;

}//end if;

else printf("系统中无记录.\n");

}

void inputData(SqLinkList&L){

//请求输入学生成绩,则追加一个结点并输入;

ElemType e;

if(ScanE(e)) SqLinkListAppend(L,e);//输入数据,追加一个结点;

}

void SqLinkListTraverse(SqLinkList L){

//所有学生信息列表输出;

Node*p;

char c;

p=L.head;

if(p)//非空表;

{

printf("\n学号姓名学期成绩A成绩B成绩C平均成绩\n");

for(p=L.head;p;p=p->next)PrintE(p->data);

//从第一个结点开始输出所有信息直到结点为空;

}

else printf("系统中无记录。\n");

//空表;

c=getchar();

}

void PrintE(ElemType e){

//输出各科成绩和平均成绩;

printf("%d\t%s\t%d\t%f\t%f\t%f\t%f\n",e.num,e.name,e.team,e.s1,e.s2,e.s3,(e.s1+e.s2+e.s3)/3);

//格式输出学生的学号、姓名、学期、A、B、C三门成绩以及平均成绩;

}

关于大一c语言课程设计报告和c语言课程设计报告书写作规范的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

dnf更新时间,dnf今天更新维护公告airtag什么东西(苹果airtag是什么东西)