C语言实习——职工工资信息管理系统

C语言实习——职工工资信息管理系统
C语言实习——职工工资信息管理系统

江西师范大学

本科生课程论文封面

课程名称C语言课程设计

类别: C.本科生

组长:黄金峰

组员:谢熊飞吴云清王伟林梦婷

日期: 2014年7月7日

课程设计评语

对课程论文的评语:

平时成绩:课程论文成绩:

总成绩:评阅人签名:

注:1、无评阅人签名成绩无效;

2、必须用钢笔或圆珠笔批阅,用铅笔阅卷无效;

3、如有平时成绩,必须在上面评分表中标出,并计算入总成绩。

目录

课程设计评语 (2)

目录 (3)

1.课程论文题目.............................................................................................. 错误!未定义书签。2.程序设计思路.............................................................................................. 错误!未定义书签。3.功能模块图 (6)

4.数据结构设计 (6)

5.算法设计...................................................................................................... 错误!未定义书签。6.程序代码...................................................................................................... 错误!未定义书签。7.程序运行结果.............................................................................................. 错误!未定义书签。8.编程中遇到的困难及解决方法.. (30)

9.总结心得及良好建议 (30)

10.致谢 (31)

一.课程论文题目

职工工资信息管理系统

【要求】

该系统能够实现工资信息管理.系统包括录入,浏览,查询,统计等功能.其中录入功能要求能够添加新的工资信息到文件;浏览功能要求能按照工资卡号,姓名分类浏览,提供分屏显示;有排序功能,排序后按照工资卡号升序或实发工资降序输出;查询功能要求能够按照工资卡号,姓名查询;统计功能要求能够按照月份累计统计某职工在某时间段实发工资总金额。

【提示】

1、文件中一行数据对应一个职工工资信息。

2、工资信息的数据结构采用结构体数组,一个数组元素对应一条工资单记

录。

3、工资单信息包括工资卡号、姓名、月份、应发工资、税费、电费、税金、

实发工资等。

4、实发工资=应发工资—税费—电费—税金,其中税金计算方法为:

(1)应发工资<800元,税金=0

(2)800<应发工资<1400元,税金=(应发工资—800)*5%

(3)应发工资>1400元,税金=(应发工资—1400)*10%

二.程序设计思路

1、设计思路

(1)根据题目要求,应该把职工工资信息用结构体形式输入,在定义一个全局变量和文件指针进行整个程序的运行,然后把职工工资信息送到文件中,所以应该提供一个结构体和文件的输入输出等操作;

(2)在程序中需实现职工工资浏览、查询、统计等功能的操作,所以需要建立相应的功能模块来实现;

(3)另外还需要提供键盘式选择菜单实现功能,在运行时达到所要的目的。2、总体设计

整个系统可以分为信息输入、信息新增、信息浏览、信息排序和信息查询五个主要模块。

3、详细设计

(1)工资信息采用结构体数组:

struct list

{

int num; //工资卡号

char name[20]; //姓名

int month; //月份

int salary1; //应发工资

int water; //水费

int electrisity; //电费

float fax; //税金

float salary2; //实发工资

}list[N]; //list[N]中每个数组元素对应一个职工工资信息

(2)输入模块

按照工资卡号、姓名、月份、应发工资、水费、电费的顺序输入信息,税金和实发工资根据输入的信息进行计算得到,这些信息被录入到文件中。

文件操作函数:fopen,fwrite,fclose.

税金的计算:

if(应发工资<=800)

税金=0;

else if (应发工资>800&&应发工资<=1400)

税金=(应发工资-800)*5%;

else if (应发工资>1400)

税金=(应发工资-1400)*10%;

实发工资=应发工资-水费-电费-税金。

(3)新增模块

增加新的职工工资信息,从键盘输入并逐条写到原来的输入文件中,采用追加而不是覆盖的方式(以“ab”方式打开文件)。

(4)浏览模块

调用排序模块的排序功能,可以浏览排序后的所有职工信息。

(5)排序模块

排序模块提供菜单选择,实现按照工资卡号升序、实发工资升序排序。排序方法可以选择冒泡排序、插入排序、选择排序等,本系统用的是冒泡排序。

(6)查询模块

实现按照工资卡号和姓名的查询,采用基本的查找方法即可。

三.功能模块图

四. 数据结构设计

系统用将职工各项信息以结构体类型struct list 来定义,它包括num ,name[20],month,salary1,water,electricity,fax,salaly2等不同类型的数据项,同时定义了结构体数组,包括N 个数组元素,对应N 个职工,每一个元素用来存放一个职工的数据;每个职工的信息以结构体方式从内存和磁盘文件中进行存储和导出。以结构体方式来整合职工的不同信息,将不同的数据组合成一个有机整体,非常方便程序的调用。

五.算法设计

1、主函数

主函数一般设计比较简单,只提供输入、处理和输出部分的函数调用。各功能模块用菜单方式选择。

[流程图]

职工工资信息管理系统

主菜单menu()

输入模块enter() 新增模块add ()

浏览模块

browse()

排序模

order()

按姓名查询

search_1()

查询模块

search()

按工资卡号查询search_2() 退出exit(0)

按实发工资排序order_2() 按工资卡号排序order_1()

N Y

#include #include #include #include #define N 50

void main() /***************主函数***************/ {

void menu(); /*声明菜单函数*/ menu(); /*调用菜单函数*/ }

void menu() /***************菜单函数***************/ {

void enter(); void add(); void browse(); void search(); void order(); int n,w1; do {

puts("\t\t*********************MENU*************************\n\n"); puts("\t\t\t 1.Enter "); puts("\t\t\t 2.Add");

puts("\t\t\t 3.browse all"); puts("\t\t\t 4.Search "); puts("\t\t\t 5.Order "); puts("\t\t\t 6.Exit");

puts("\n\n\t\t*************************************************\n"); printf("Choice your number(1-6):[ ]\b\b");

开 始

显示一系列的功能选择

输入n ,判断n 是否是0到6 根据n 值调用各功能模块

scanf("%d",&n);

if(n<1||n>6) /*对选择数字作判断*/

{

w1=1;

getchar();

}

else w1=0;

}

while(w1==1);

switch(n) /*选择功能*/

{

case 1:enter();break; /*输入模块*/

case 2:add();break; /*追加模块*/

case 3:browse();break; /*浏览模块*/

case 4:search();break; /*查找模块*/

case 5:order();break; /*排序模块*/

case 6:exit(0);

}

}

2、各功能模块设计

(1)输入模块

[数据结构]

把职工的卡号、月份应发工资、水费、电费、税金、实发工资作为结构体成员,如果存放若干个职工信息就用结构体数组。

struct list

{

int num;

char name[20];

int month;

int salary1;

int water;

int electrisity;

float fax;

float salary2;

}list[N]; /*list[N]中每个数组元素对应一个职工*/

[流程图]

1 2

/***************输入模块***************/ void enter() /*输入模块*/ {

void printf_back(); void save(int n); void input(int i); int i,n;

printf("how many workers (0-%d)?:",N-1); scanf("%d",&n);

printf("\n enter date now\n\n"); for(i=0;i

printf("\n input %dth worker record.\n",i+1); input(i); /*调用输入函数*/ }

if(i!=0)save(n); /*调用保存函数*/

printf_back(); /*一个任务结束时让用户选择是浏览还是返回*/ }

⑵ 追加模块

[需求分析]

该模块的功能是用户需要增加新的职工记录,请从键盘输入并逐条写到原来的输入文件中是追加不是覆盖.

[流程图]

开 始

输入职工数目 输入各项信息

储存职工信息 返回? 主菜单 浏览职工信息

1

2

[程序]

/***************追加模块***************/ void add() /*追加模块*/ {

void printf_back(); int i,n,m,k; int load(); void save(int n); void input(int i); FILE *fp; n=load();

printf("how many workers are you want to add(0-%d)?:",N-1-n); scanf("%d",&m); /*输入要追加的个数*/ k=m+n;

for(i=n+1;i<=k;i++) {

printf("\n input %dth workers record.\n",i-n); input(i); /*调用输入函数*/ }

fp=fopen("workers.txt","ab") /*以ab 方式打开文件,追加保存*/; for(i=n+1;i<=k;i++) /*输出到文件*/ fwrite(&list[i],sizeof(struct list),1,fp);

fclose(fp);

printf_back(); /*一个任务结束时让用户选择是浏览还是返回*/

}

开 始

输入新增职工数目

输入新职工信息

储存输入信息

返回?

浏览职工信息

主菜单

⑶浏览模块

[需求分析]

该模块的功能是显示所有职工记录工资信息.

[流程图]

显示职工工资记录(10个一屏)

按任意键显示下一屏

按任意键返回主菜单

[程序]

/***************浏览(全部)模块***************/

void browse() /*浏览模块*/

{

void printf_one(int i);

void printf_face();

int load();

void menu();

int i,n;

n=load(); /*加载记录*/

printf_face(); /*调用显示数据结构项目函数*/

for(i=0;i

{

if((i!=0)&&(i%10==0)) /*目的是分屏显示*/

{printf("\n\npress any key to contiune...");

getch();

puts("\n\n");}

printf_one(i); /*调用显示一个记录的函数*/

printf("\n");

}

printf("\t there are %d record.\n",n);

printf("\n pass any key to back...");

getch(); /*按任意键*/

menu();

}

⑷查找模块

[需求分析]

该模块的功能是根据输入的职工姓名和卡号查找对应的记录.

[流程图]

N

Y 1

2

1 2

[程序]

/***************查找函数***************/

void search() /*查找模块*/ {

int n,w1; do {

puts("\t\t\t1.search by name"); puts("\t\t\t2.search by num"); scanf("%d",&n);

if(n<1||n>2) /*对选择数字作判断*/ {

w1=1; getchar(); }

else w1=0; }

while(w1==1); switch(n) {

void search_1(); void search_2();

case 1:search_1();break; case 2:search_2();break; }

开 始

输入n

判断n 值

按姓名查询

按卡号查询

输出

返回? 浏览职工信息

主菜单

}

void search_1() /*按姓名查找*/

{

int load();

void printf_face();

void menu();

void printf_one(int i);

int i,n,k,w1=1,w2,w3,w4;

struct list s;

n=load();

do

{

do

{

k=-1;

printf("\n\nenter name that you want to search! name:");

scanf("%s",https://www.360docs.net/doc/1416438639.html,);

printf_face(); /*调用显示数据结构项目函数*/

for(i=0;i

if(strcmp(https://www.360docs.net/doc/1416438639.html,,list[i].name)==0)

{

k=i; /*找到数据*/

printf_one(k);break; /*调用显示一个记录的函数*/

}

if(k==-1)

{

printf("\n\n NO.exit!please");

printf("\n\nare you again?\n\t1).again 2).NO and back [ ]\b\b");

scanf("%d",&w1);

if(w1==2)break;

}

}

while(k==-1&&w1==1); /*如果w1不等于1这直接返回*/

w4=0;w3=0;

if(k!=-1) /*k不等于-1表示已找到,如果找到则选择操作*/

{

printf("successful");

printf("\n\n what do you want to do?\n\t1).search another 2).back [ ]\b\b");

scanf("%d",&w2);

}

}

while(w2==1);

}

void search_2() /*按卡号查找*/

{

int load();

void printf_face();

void menu();

void printf_one(int i);

struct list s;

int i,n,k,w1=1,w2,w3,w4;

n=load();

do

{

do

{

k=-1;

printf("\n\nenter num that you want to search! num:");

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

printf_face(); /*调用显示数据结构项目函数*/

for(i=0;i

if(s.num==list[i].num)

{

k=i; /*找到数据*/

printf_one(k);break; /*调用显示一个记录的函数*/

}

if(k==-1)

{

printf("\n\n NO.exit!please");

printf("\n\nare you again?\n\t1).again 2).NO and back [ ]\b\b");

scanf("%d",&w1);

if(w1==2)break;

}

}

while(k==-1&&w1==1); /*如果w1不等于1这直接返回*/

w4=0;w3=0;

if(k!=-1) /*k不等于-1表示已找到,如果找到则选择操作*/

{

printf("\nsuccessful");

printf("\n\n what do you want to do?\n\t1).search another 2).back [ ]\b\b");

scanf("%d",&w2);

}

while(w2==1); menu();

}

⑸ 排序模块

[需求分析]

该模块的功能是将职工记录按照一定顺序排序. [流程图]

N

Y

1

2

1

2

/***************排序模块***************/ void order() /*排序模块*/ {

int w1,n;

void order_1(); void order_2(); do {

puts("\t\t\t1.order by num"); puts("\t\t\t2.order by salary"); scanf("%d",&n);

if(n<1||n>2) /*对选择数字作判断*/

开 始

输入n

判断n 是否是0到2

按工资卡号排序

按实发工资排序

输出

返回?

浏览职工信息

主菜单

{

w1=1;

getchar();

}

else w1=0;

}

while(w1==1);

switch(n)

{

case 1:order_1();break;

case 2:order_2();break;

}

}

void order_1() /*卡号升序排*/

{

int load();

void printf_back();

void save(int i);

int i,j,n,k;

void browse();

struct list s;

n=load();

for(i=0;i

{

k=i;

for(j=i+1;j

if(list[j].num

s=list[i];

list[i]=list[k];

list[k]=s;

}

save(n);

browse();

puts("\n\n");

printf_back();

}

void order_2() /*工资降序排*/

{

int load();

void printf_back();

void save(int i);

int i,j,n,k;

struct list s;

n=load();

for(i=0;i

{

k=i;

for(j=i+1;j

if(list[k].salary2

s=list[i];list[i]=list[k];list[k]=s;

}

save(n);

browse();

puts("\n\n");

printf_back();

}

六、程序代码

(每个函数都要有功能说明)

#include

#include

#include

#include

#define N 50

void main()

{

void menu();

menu();

}

void menu() //主菜单函数

{

void enter();

void add();

void browse();

void search();

void order();

int n,w1;

do

{

puts("\t\t*********************MENU*************************\n\n");

puts("\t\t\t 1.Enter ");

puts("\t\t\t 2.Add");

puts("\t\t\t 3.browse all");

puts("\t\t\t 4.Search ");

puts("\t\t\t 5.Order ");

puts("\t\t\t 6.Exit");

puts("\n\n\t\t*************************************************\n");

printf("Choice your number(1-6):[]\b\b");

scanf("%d",&n);

if(n<1||n>6) /*对选择的数字进行判断*/

{

w1=1;

getchar();

}

else w1=0;

}

while(w1==1);

switch(n)

{

case 1:enter();break; /*输入模块*/

case 2:add();break; /*新增模块*/

case 3:browse();break; /*浏览模块*/

case 4:search();break; /*查找模块*/

case 5:order();break; /*排序模块*/

case 6:exit(0); /*退出模块*/

}

}

struct list //结构体定义工资信息

{

int num; //工资卡号

char name[20]; //姓名

int month; //月份

int salary1; //应发工资

int water; //水费

int electrisity; //电费

float fax; //税金

float salary2; //实发工资

}list[N]; //list[N]中每个数组元素对应一个职工工资信息

void enter() //输入模块函数

{

void printf_back();

void save(int n);

void input(int i);

int i,n;

printf("how many workers (1-%d)?:",N-1);

scanf("%d",&n); //输入职工数目

printf("\n enter date now\n\n");

for(i=0;i

{

printf("\n input %dth student record.\n",i+1);

input(i); //调用职工信息输入函数

}

if(i!=0)save(n); //储存职工信息

printf_back(); //执行返回函数

}

void add() //新增模块函数

{

void printf_back();

int i,n,m,k;

int load();

void save(int n);

void input(int i);

FILE *fp; //定义文件指针变量

n=load(); //导出文件信息,得到返回值

printf("how many workers are you want to add(0-%d)?:",N-1-n);

scanf("%d",&m); //输入新增职工数目

k=m+n; //总职工数= 新增职工数+已有职工数

for(i=n+1;i<=k;i++) //输入新增职工信息

{

printf("\n input %dth workers record.\n",i-n+2);

input(i); //调用职工信息输入函数

}

fp=fopen("workers.txt","ab"); //以追加形式打开文件

for(i=n+1;i<=k;i++)

fwrite(&list[i],sizeof(struct list),1,fp); //将内存中的职工信息输出到磁盘文件中

save(n); //储存输入信息

fclose(fp); //关闭文件

printf_back(); //执行返回函数

}

void browse() //浏览模块函数

{

void printf_one(int i);

void printf_face();

int load();

void menu();

int i,n;

n=load();

for(i=0;i

{

if((i!=0)&&(i%10==0)) //以10个职工为一组输出

{printf("\n\npass any key to continue...");

getch();

puts("\n\n");}

printf_one(i); //输出各职工信息

printf("\n");

}

printf("\t there are %d recode.\n",n);

printf("\n pass any key to back..");

getch();

menu(); //返回主菜单

}

void search() //查询模块函数

{

int n,w1;

do

{

puts("\t\t\t1.search by name"); //按姓名查询

puts("\t\t\t2.search by num"); //按工资卡号查询

scanf("%d",&n);

if(n<1||n>2)

{

w1=1;

getchar();

}

else w1=0;

}

while(w1==1);

switch(n)

{

void search_1();

void search_2();

case 1:search_1();break;

case 2:search_2();break;

}

}

void search_1() //按姓名查询

{

int load();

void printf_face();

C语言课程设计总结

C语言课程设计总结 一、设计题目: 猜数字和贪吃蛇小游戏。 专业:09电气工程及其自动化 组号:第十组 组员:马邢(组长)、王维、毛亮、汪小成、魏坤波、陈维康、高裴石、石峰、葛良志、冯鑫源 指导教师:黄莉莉 二、任务分配: 我们组分为两队,一对制作贪吃蛇游戏,另一对制作猜数字游戏。制作贪吃蛇的人员是马邢,葛良志,高裴石,石峰,陈维康。石峰和高裴石负责收集程序材料,马邢和葛良志负责整理和编写程序,陈维康辅助我们工作。制作猜数字的是魏坤波,王维,毛亮,汪小成,冯鑫源。魏坤波和王维负责编写程序,其他三人收集材料并帮助他们人编写和调试程序。 三、心得体会: 课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,当今计算机应用在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握计算机开发技术是十分重要的。 回顾起此次课程设计,至今让我我们仍感慨颇多,的确,从从拿到题目到完成整个编程,从理论到实践,几个星期的日子里,可以学

到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识,也懂得集体团队的重要性。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体……通过这次课程设计之后,一定把以前所学过的知识重新温故。 这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在黄老师的辛勤指导下,终于游逆而解。同时,在黄老师的身上我学得到很多实用的知识,在次我表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢

c语言实训心得

C语言实践心得体会 在这个星期里,我们在专业老师的带领下进行了c语言程序实践学习。在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,更多的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。 由于时间的关系,我们的这次实践课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。上机实验是学习程序设计语言必不可少的实践环节,特别是c语言灵活、简洁,更需要通过编程的实践来真正掌握它。对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。 学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。因为学时所限,课程不能安排过多的统一上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基础。个人认为课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面: 1、加深对课堂讲授内容的理解 课堂上要讲授许多关于c语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用c语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。 学习c语言不能停留在学习它的语法规则,而是利用学到的知识编写c语言程序,解决实际问题。即把c语言作为工具,描述解决实际问题的步骤,由计算机帮助我们解题。只有通过上机才能检验自己是否掌握c语言、自己编写的程序是否能够正确地解题。 通过上机实验来验证自己编制的程序是否正确,恐怕是大多数同学在完成老师作业时的心态。但是在程序设计领域里这是一定要克服的传统的、错误的想法。因为在这种思想支配下,可能你会想办法去"掩盖"程序中的错误,而不是尽可能多地发现程序中存在的问题。自己编好程序上机调试运行时,可能有很多你想不到的情况发生,通过解决这些问题,可以逐步提高自己对c语言的理解和程序开发能力。 2、熟悉程序开发环境、学习计算机系统的操作方法 一个c语言程序从编辑、编译、连接到运行,都要在一定的外部操作环境下才能进行。所谓"环境"就是所用的计算机系统硬件、软件条件,只有学会使用这些环境,才能进行程序开发工作。通过上机实验,熟练地掌握c语言开发环境,为以后真正编写计算机程序解决实际问题打下基础。同时,在今后遇到其它开发环境时就会触类旁通,很快掌握新系统的使用。 3、学习上机调试程序

c语言程序设计心得体会

c语言程序设计心得体会 本文从网络收集而来,上传到平台为了帮到更多的人,如果您需要使用本文档,请点击下载按钮下载本文档(有偿下载),另外祝您生活愉快,工作顺利,万事如意! 二十一世纪是计算机的世纪,是一个全新的世纪,计算机正逐步入侵我们的生活。刚开始接触计算机的时候感觉很新奇,那时觉得计算机很神秘,于是就产生了以后一定要熟练掌控计算机的念头。怀着这个愿望,我选择了计算机科学与技术为专业,有点兴奋又有点担忧,兴奋的是以后可以经常接触和了解计算机了,担忧的是我几乎没有任何基础,怕跟不上大家的步伐。有死党说我杞人忧天,结果证实我“忧”得不无道理。依然清楚地记得第一学期的上机课,每次上机老师都计分,所以经常手忙脚乱,用“惨不忍睹”来形容是最适合不过了。 紧张的一个学期过后,我们迎来了c语言的学习和一位风趣博学的老师。虽然刚开始学习c语言的时候大家都一筹莫展,但在老师的鼓励和教育下一步步地往前迈,很令人欣慰。在这之后的学习中仍然困难重重,然而“坚持到底就是胜利”这个坚定的信念激励着我们勇往直前。c语言课本的学习总算结束了,多么崎岖的一条学习之路。

大学的教育模式和中学有很大不同,从平常的课程安排和教学就可以知道,但是独立完成课程设计和写论文这种任务对我们来说无疑是一个很大的挑战。十七周开始进行课程设计,老师要求我们写一个计算器的程序,起初大家都被难倒了,然后开始一步步地摸索,先查找有关资料,画计算器的图形,写了好长一段程序才把图形搞定,可老师一看都不满意,要求我们用循环来做,“师”令如山,不得不听从,改吧,这一改又让大家死了好多脑细胞,感觉有点残忍。 完成了计算器的图形很有成就感,毕竟六月天坐在机子前不是令人愉快的事。接下来要进行计算器内部运算程序的设计,说实话,我根本就不知道要做,更不清楚如何着手,不是我妄自菲薄,独立完成这个程序设计根本就是不可能的事,可想而知只能寻求帮助了,但这个程序不是轻而易举就能完成的。有些积极的同学从网上搜索了好多有关这方面的资料,拼拼凑凑,进行了多次讨论,终于完成了这部分的设计,在同学的互相帮助下,大多数人都完成了最重要的一部分程序设计。 接下来就是用循环语句使按键上的数字有闪烁的功能,这个因为之前老师有过提点,所以相对简单一些。

c语言实验报告总结

篇一:《C语言上机实验心得》 C语言上机实验心得 在科技高度发展的今天,计算机在人们之中的作用越来越突出。而C语言作为一种计算机的语言,学习它将有助于我们更好的了解计算机,与计算机进行交流,因此,我们一定要学好C语言,这对我们以后的发展是十分重要的。 说到这,上机实验当然就是一个必不可少的环节了,C语言灵活、简洁的特点,只有通过编程实践才能真正了解,真正说懂。为了更好地学习语法规定、掌握程序设计方法、提高程序开发能力,我们必须实际上机、编写程序。 通过实验我也发现了自己不少的问题,这都是只看书上的程序而没有自己亲身上机编写程序而无法得知的,假如我们只因看熟书上的程序就以为自己已经掌握了C语言那就大错特错了。 我主要存在以下的这些缺点 1、学习耐心与细心不足,如scanf(“%d”,&n);中的“&”有时候会忘了。而在最后

输出时又错写成printf(“%d”,&n);从而错误得输出了地址而不是我原来想要的答案。 2、编程思想不够发散,看着题目有时想不出解答的方法,更不用说编写程序来解 题了。 3、 4、基本功不够,有些函数的表达不太精通,需要看书来核实,以致耗时较多。知识不够广,有些内容没有学好,不能要用到时及时反映出来,认识程度不够 深刻。 5、 6、有时候不够精简,有一点用处不大或者说没有也可以的文字存在。英语水平较差,对错误的地方虽然电脑有说,但由于是英文,理解上还是存在

一点问题。 为了能更好地学好C语言,在今后学习中我要更多的动脑,综合运用所学,多看相关东西,多上机练习,提高电脑水平,增强自学能力,把已会的东西掌握好。 实验中我深刻意识到完成程序的编写,决不意味着万事大吉。认为万无一失的程序,实际上机运行时可能会出现很多意想不到的问题。有时编译程序检测出一大堆错误,有时程序能够顺利运行,但是运行结果并不是你预期中想要的。因为开发环境所提供的编译系统无法发现程序逻辑错误,或者是你原来所设计时的理论错误,这就只能靠自己的上机经验来分析判断错误的所在了。所以程序的调试是一个技巧性很强的工作,它可能比编一个程序耗时更 多。由此可看出上机实践的重要性。 通过本次C语言上机实验,我对这个介于人类与非人类之间的计算机编程语言有了一定的体验。编程的时候有因为顺利编出程序而开心过、有因为做得比人家慢而郁闷过、有因为不知从何入手而无奈过、有因为不知错出在哪而彷徨过但随着练习的增多,我对C语言比以前熟了很多,不再只是纸上谈兵,我都有能力独立做出一些程序,可能对于一些“高手来说这不算什么,或者他们早就会了,但我依然觉得很开心,因为我跟我自己比是进步了。

最新大学生c语言程序设计实训报告总结

大学生c语言程序设计实训报告总结 C语言是在国内外广泛使用的一种计算机语言。其语言功能丰富、表达能力强、使用灵活方便,,小编整理了大学生c语言程序设计实训报告总结,希望能帮助到您。 大学生c语言程序设计实训报告总结一 C语言是在国内外广泛使用的一种计算机语言。其语言功能丰富、表达能力强、使用灵活方便、既具有高级语言的优点,又具有低级语言的许多特点,适合编写系统软件。其功能强大,不仅用在计算机上广泛用在电子,机械等方面上,而且,所有的windows,Unix,Linux,Mac,os/2,无一例外,哪一个不是C语言写的?很多新型的语言如,C++,Java,C#,J#,perl...都是衍生自C语言。掌握了C语言,可以说你就掌握了很多门语言。 学习C程序这门课一年了,这是我们学的第一门专业课,在大学里C语言不但是计算机专业的必修课程而且也是非计算机专业学习计算机基础的一门必修课程。所以作为我这个计算机专业的学生来说当然十分重要,老师在第一节课说过,C语言是计算机的基础,大多数软件都需要用C语言来编写,通过一个年的学习,使我由初步掌握简单的应试知识到完成高难度的深入编程,如我们在编写一个较大的程序时应该把它分开成几个小程序来看,这样会容易得多。同时,我觉得C语言应该是操作和理论相结合的课程,在不断地编写中去思考,两者是不可分割的。 在学习一年C语言的过程中我也在慢慢探索怎样才能学好C语言,

并总结了一点经验: 要了解C语言就要从语法规为基础来学习起,首先要是要了解它的结构,比如变量,首先要了解变量的定义方式(格式),其意义是什么(定义变量有什么用);其次就是要我要怎么去运用它(我要用什么型式去应用它)。在C语言的命令行中所有的语句都是有它自己的一定格式和形式出现在我们面前,所以我们在学习某种语句或命令时你首先要了解的就是它的规则是什么、有什么用、怎么实现等。这些都是语法基础也是C语言的基础如果把它们都了解很好了,那么你编起程序来就很得心应手了。比如说IFELSE和SWITCHCASE这两种条件语句都是用来判断执行功能的,那我要什么时侯用IF什么时侯用SWITCH 呢?如果你很好地了解它们的结构和作用的话那么就知道:若它的条件分支是多个而且条件的值是整数或是一个字符值时就会选SWITCH 而不会选IF。因为如果条件分支太多时要用IF语句,这样一定会出现IF的嵌套,如果IF的嵌套越多时程序的开销就会随着增大,这样对整个程序的运行效率就大在降底。而SWITCH就不同,它只要比较一次就可以找出条件的结果比起嵌套IF它的效率就大大的提高了很多。不过SWITCH也有它的约束条件,就是它的条件值一定要是一个整型数或是一个字符值,所以碰到它不能解决的问题时我们也会通常使用IF语句,毕竟IF语句它使用起来也比较方便用的范围也比较广。所以说了解语法规则是很重要的,如果没有一个良好的语法基础是很难编出一个好的程序!学习好基础后我们就可以开始来编程了。 大学生c语言程序设计实训报告总结二

c语言实验心得体会

c语言实验心得体会 篇一:C语言上机实验心得 C语言上机实验心得 在科技高度发展的今天,计算机在人们之中的作用越来越突出。而C语言作为一种计算机的语言,学习它将有助于我们更好的了解计算机,与计算机进行交流,因此,我们一定要学好C语言,这对我们以后的发展是十分重要的。 说到这,上机实验当然就是一个必不可少的环节了,C 语言灵活、简洁的特点,只有通过编程实践才能真正了解,真正说懂。为了更好地学习语法规定、掌握程序设计方法、提高程序开发能力,我们必须实际上机、编写程序。 通过实验我也发现了自己不少的问题,这都是只看书上的程序而没有自己亲身上机编写程序而无法得知的,假如我们只因看熟书上的程序就以为自己已经掌握了C语言那就大错特错了。 我主要存在以下的这些缺点: 1、学习耐心与细心不足,如scanf(“%d”,n);中的“”有时候会忘了。而在最后 输出时又错写成printf(“%d”,n);从而错误得输出了地址而不是我原来想要的答案。 2、编程思想不够发散,看着题目有时想不出解答的方法,更不用说编写程序来解

题了。 3、 4、基本功不够,有些函数的表达不太精通,需要看书来核实,以致耗时较多。知识不够广,有些内容没有学好,不能要用到时及时反映出来,认识程度不够 深刻。 5、 6、有时候不够精简,有一点用处不大或者说没有也可以的文字存在。英语水平较差,对错误的地方虽然电脑有说,但由于是英文,理解上还是存在 一点问题。 为了能更好地学好C语言,在今后学习中我要更多的动脑,综合运用所学,多看相关东西,多上机练习,提高电脑水平,增强自学能力,把已会的东西掌握好。 实验中我深刻意识到完成程序的编写,决不意味着万事大吉。认为万无一失的程序,实际上机运行时可能会出现很多意想不到的问题。有时编译程序检测出一大堆错误,有时程序能够顺利运行,但是运行结果并不是你预期中想要的。因为开发环境所提供的编译系统无法发现程序逻辑错误,或者是你原来所设计时的理论错误,这就只能靠自己的上机经验来分析判断错误的所在了。所以程序的调试是一个技巧性很强的工作,它可能比编一个程序耗时更

c语言课程设计总结

c语言课程设计总结 c语言课程设计总结8篇 c语言课程设计总结(一): 经过一个星期的上机实践学习,使我对c语言有了更进一步的认识和了解,要想学好它要重在实践,要透过不断的上机操作才能更好地学习它,透过实践,我也发现我的好多不足之处,首先是自己在指法上还不行,经常按错字母,透过学习也有所改善;再有对c语言的一些标准库函数不太了解,还有对函数调用的正确使用不够熟悉,还有对c语言中经常出现的错误也不了解,透过实践,使我在这几个方面的认识有所提高。 透过实践的学习,我认到学好计算机要重视实践操作,不仅仅仅是学习c语言,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。 c语言课程设计总结(二): 经过一个学期的学习,我对C语言有了必须的了解。C语言是学习计算机科学的基础,作为一名计算机专业学生,掌握C语言更是毋庸置疑。在上课之前,就经常听同学说,C语言很难学,确实,刚开始听课时觉得老师不知所云。但是,发现对后续资料的预习后,前面的疑团都迎刃而解,这让我对C语言的学习更有信心。

计算机最重要的就是上机操作,自己编写程序,在VisualC++运行,刚开始经常会出现错误,经过分析改正后,最后能够运行了,就觉得个性激动。 课程设计是一个把需求分析、程序编写、程序调试、撰写报告结合为一体的过程。在这个过程中,不仅仅锻炼了我们缜密的思维和坚持不解的毅力,更磨练了一个队伍的团结互助的精神。只有透过大家一齐努力才能将课程设计的所有环节都顺利的完成。另外程序设计中我们遇到问题并解决问题的过程,使得我们独自探索并解决问题的潜力了有了一个提高,这有利于我们以后的学习。同时这整一个过程,也使我们对程序编写的整个过程有了一个统筹全局的思想,因为需求分析、程序编写、程序调试、撰写报告这些过程是环环相扣的,绝对不可能独立进行。 课程设计是学习《C程序设计》后对知识的全面测试,刚拿到题目时不明白怎样去处理,觉得很复杂,经过和小组成员的讨论,上网查资料,逐个问题逐个击破,问题不再那么复杂。透过课程设计,我发现自己还存在很多知识漏洞,编写程序时,经常会出现低级错误,很多知识点都不熟悉。在今后的时间里,我必须要投入更多精力学习C语言,以课本为基础,请教老师,与同学讨论,参考资料,上机操作,我相信我必须能把C语言学好。

《C语言程序设计》学习心得.pdf

C语言程序设计网络学习心得 通过这一阶段网络的学习,我总结出以下几点,在今后的教学过程中可以尝试加以注重: (一)激励学生学习兴趣,充分调动学生学习积极性 学习兴趣就是学生在心理上对学习活动产生爱好、追求和向往的倾向,是推动学生积极主动学习的直接动力。爱因斯坦说过:“兴趣是最好的老师,真正有价值的东西,并非仅仅从责任感产生,而是从对客观事物的爱与热忱中产生”。我国古代教育家孔子也说:“知之者不如好之者,好之者不如乐之者。”只有“好之”、“乐之”方能有高涨的学习热情和富有创造性地去完成学习任务。明确学习目的,激发学习兴趣 只有学习思想端正,学习目的明确,学生才会有学习的动力,才会有学习的自觉性。有的学生认为C语言已经落伍了,没有什么用,我们要使每个学生明确即将学习的知识与社会的关系,告诉学生学习C语言是建立程序设计思想,学习程序设计的各种基本概念、方法、技巧,培养良好的程序设计风格。在讲C 语言程序设计课程前,收集大量招聘C语言编程人员的就业信息及毕业生从事C 语言编程工作的收入、工作条件、工作岗位等学生十分关注的重要信息。同时,也列举了大量用C语言完成商业性软件工程,以激发学生学习C语言的动机的热情。学生有了主动性,才会自觉地学习这门课。 (二)设计问题,开发智力,引导学生自己解决实际问题 在教学过程中,我们提倡学生在课堂上发现问题、提出问题,对于学生在练习中所遇到的问题,教师不能马上告诉答案,应当适当的启发和引导让学生自己找到答案,培养他们的思考能力。同时教师要精心设计一些富有启发性的问题,达到开发学生智力的目的。这样做有两方面的意义:一是为了引人入胜,激发学生的学习兴趣;二是对知识本身提出疑问,加深对问题的认识和讨论,这也是推动C 语言课程教学艺术化的途径之一。 (三)强化课程设计,加强学生能力培养 课程设计是整个课程学习的总结与提高,通过必要的课程设计,切实加强学生的能力培养,通常课程设计贯串整个教学环节,设计内容以具体的软件系统的

c语言指针实验报告

C语言实习报告 题目:指针及其应用 系别: 专业: 姓名: 学号: 日期:

一实验名称:指针及其应用 二实验目的: (1)掌握变量的指针及其基本用法。 (2)掌握一维数组的指针及其基本用法。 (3)掌握指针变量作为函数的参数时,参数的传递过程及其用法。 三实验内容: (1)运行以下程序,并从中了解变量的指针和指针变量的概念。 (2)运行以下程序,观察&a[0]、&a[i]和p的变化,然后回答以下问题: 1.程序的功能是什么? 2.在开始进入循环体之前,p指向谁? 3.循环每增加一次,p的值(地址)增加多少?它指向谁? 4.退出循环后,p指向谁? 5.你是否初步掌握了通过指针变量引用数组元素的方法? (3)先分析以下程序的运行结果,然后上机验证,并通过此例掌握通过指针变量引用数组元素的各种方法。

(4)编写函数,将n个数按原来的顺序的逆序排列(要求用指针实现),然后编写主函数完成: ①输入10个数; ②调用此函数进行重排; ③输出重排后的结果。 四分析与讨论: (1)指针的定义方法,指针和变量的关系。 定义方法: 数据类型 *指针变量名; 如定义一个指向int型变量的指针—— int *p;

则我们可以继续写如下代码—— int a = 4; p = &a; printf("%d", *p); 在这里,我们定义了一个变量a,我们把它理解为内存空间连续的4个字节(int型占用4字节),则这4个字节的空间保存着一个数4。&是取地址符号,即把变量a的地址(即这4个字节的首地址)赋给指针p (记住指针p的类型和变量a的类型要保持一致,否则的话,要进行类型转换)。这样子,指针p就保存着变量a的地址。我们如果把指针p当做内存空间里面另外一个连续的4个字节,那么这4个字节保存的数就是变量a的地址。printf("%d",*p)和printf("%d",a)的结果是一样的。这里的*是取变量符号(与&刚好作用相反,通过变量的地址找到变量),与定义时int *p的*号作用不同(定义时的*表示该变量是个 指针变量,而非是取它指向的变量)。 (2)数组和指针的关系。 指针与数组是C语言中很重要的两个概念,它们之间有着密切的关系,利用这种关系,可以增强处理数组的灵活性,加快运行速度,本文着重讨论指针与数组之间的联系及在编程中的应用。 1.指针与数组的关系 当一个指针变量被初始化成数组名时,就说该指针变量指向了数组。如: char str[20], *ptr; ptr=str; ptr被置为数组str的第一个元素的地址,因为数组名就是该数组的首地址,也是数组第一个元素的地址。此时可以认为指针ptr就是数组str(反之不成立),这样原来对数组的处理都可以用指针来实现。如对数组元素的访问,既可以用下标变量访问,也可以用指针访问。 2.指向数组元素的指针 若有如下定义: int a[10], *pa; pa=a; 则p=&a[0]是将数组第1个元素的地址赋给了指针变量p。 实际上,C语言中数组名就是数组的首地址,所以第一个元素的地址可以用两种方法获得:p=&a[0]或p=a。 这两种方法在形式上相像,其区别在于:pa是指针变量,a是数组名。值得注意的是:pa是一个可以变化的指针变量,而a是一个常数。因为数组一经被说明,数组的地址也就是固定的,因此a是不能变化的,不允许使用a++、++a或语句a+=10,而pa++、++pa、pa+=10则是正确的。由此可见,此时指针与数组融为一体。 3.指针与一维数组 理解指针与一维数组的关系,首先要了解在编译系统中,一维数组的存储组织形式和对数组元素的访问方法。 一维数组是一个线形表,它被存放在一片连续的内存单元中。C语言对数组的访问是通过数组名(数组的起始地址)加上相对于起始地址的相对量(由下标变量给出),得到要访问的数组元素的单元地址,然后再对计算出的单元地址的内容进行访问。通常把数据类型所占单元的字节个数称为扩大因子。 实际上编译系统将数组元素的形式a[i]转换成*(a+i),然后才进行运算。对于一般数组元素的形式:<数组名>[<下标表达式>],编译程序将其转换成:*(<数组名>+<下标表达式>),其中下标表达式为:下标表达式*扩大因子。整个式子计算结果是一个内存地址,最后的结果为:*<地址>=<地址所对应单元的地址的内容>。由此可见,C语言对数组的处理,实际上是转换成指针地址的运算。 数组与指针暗中结合在一起。因此,任何能由下标完成的操作,都可以用指针来实现,一个不带下标的数组名就是一个指向该数组的指针。

C语言程序设计总结

C 语言程序设计总结 一、C 语言程序的基本结构 #include “ stdio.h ” void main() { 定义变量; 程序实现; 输出结果; printf } 、变量的定义 1.整型:int a , b, s=0; ( 可以在定义的同时为变量进行赋值) 长整型:long 无符号整型(非负整数) :unsigned 2.单精度实型:float x, y, z=1.0 ; 3.双精度实型:double l,m; 4. 字符型:char c1= ' Ac'2=,';b ' 三、变量的赋值 1.直接赋值:a=10 ; // 用赋值号“ = ”将右侧的值赋给左侧的变量 2.赋表达式的值:a=3+7; 3. 赋另外一个变量的值:a=s; // 把s 的值赋给a 变量的输入: 输入一个变量:scanf( “% d”, &a); 输入多个变量:scanf( “%d%d%d ”,&a, &b, &c); int--%d float--%f char--%c double--%lf 字符串--%s 变量的输出: 输出一个提示语句:printf( “xxxxxx ”); 输出一个回车:printf( “\n ”); 输出一个变量:printf( “xxx is %d ”,a); 输出多个变量:printf( “xxxx%d, xxxx%d ”,a,b); 练习:1.输入圆的半径,求圆的周长。 四、常用流程控制语句 分支语句:根据条件执行相应的语句 条件的形式:a大于0 写成a>0 a小于0 写成a<0 a等于0 写成a==0 (注意,用两个=) a大于等于0并且小于等于10 写成a>=0 && a<=10 a小于0或者a大于10 写成a<0 || a>10

C语言实训课程学习总结

C语言实训课程学习总结 在初学C语言的一个学期后,我们进行了C语言实训阶段,尝试编写一个比较复杂的程序系统。在为期一周的时间中,我们同组的 同学共同的感受是:C语言实训和平时上课所接触的程序是有很大 不同的,所经受的考验和克服的困难是平时所无法比拟的。好在同 组的搭档们精诚合作,分工明确,有问题共同解决,攻克了C语言 实训的复杂程序。在这里,我作为其中的参与者,感触良多。 在这次实训中,我对对C语言有了一个更深的了解认识,也对这个学期学的知识得到巩固,还尝试运行编程,每次运行程序成功, 让我对下面的项目就充满信心。通过自己与同学合作编写程序,最 终把最初的理论知识转化基本技能。这次的实训,使我对C语言的 学习产生浓厚的兴趣。 还是这次实训,最令人激动的就是合作做项目,虽然那只是一个很小很小的项目。每天大家来得很早,大家在一起学习,取长补短,我们很好的在实训中长知识,提高我们的学习热情。实训中深切体 会到了老师认真负责的伟大的精神和热情为同学指导的促学方式, 虽然对有些时候老师没给我们指出解决问题的方法有些小抱怨,但 是到了结束时才知道,这种教学让我们自己学会了自学,学会了去 看懂别人的代码。更多是老师给的感动,每天在我们来之前就到了 教室,在讲课中海给我们分享他在公司上班的一些心得和体会,还 有那些我们应该注意的事项,这些是平时上课时无法学到的,是更 深层次的巨大收获。 通过这次实训,也使我们发现了许多问题。 在实训中,我们认识到自己还有很多的知识没学好,基础知识没理清,而且许多东西还要去翻书,去上网搜索。而且遇到一些小错 误运行不出来,就会烦躁不安,觉得有些自暴自弃或者抱怨项目的 变态,以后要克服,尽量保持一颗良好的心态,学好C语言,也学 好用C语言编写一个按要求的系统。

C语言程序设计总结报告

信息工程系 课程设计报告书 所属课程名称:C语言程序设计专业班级: 150311 学生姓名:曾传凤 学号:15031102 长春工业大学人文信息学院2016年9月9日

课程设计成绩评定表

第一部分完成题目 1、简单的数学计算。编写程序,计算任意输入的3个数的和的平均值。 (1)截屏: (2)源代码: //1. 简单的数学计算。编写程序,计算任意输入的3个数的和的平均值。 #include "stdio.h" void main() { int a=0,b=0,c=0,s=0; float v; printf("三个数"); scanf("%d%d%d",&a,&b,&c); printf("三个数的和为,三个数的和的平均值为"); s=a+b+c; v=s/3; printf("三个数的和为%d,三个数的和的平均值为%f",s,v); } 2. 题目:编写程序。a为100,b为50,若a>b成立将a赋予给c,否则将b赋予给c。同时,若ab) { c=a; d=b*b*b;

} else { c=b; d=a; } printf("a=%d,b=%d,c=%d,d=%d",a,b,c,d); 3.题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。 (1)截屏: (2)源代码: #include "stdio.h" void main() { int a; printf("请输入学生成绩:\n "); scanf("%d",&a); if(a>=90) { printf("A\n"); } else if(a>60&&a<89) { printf("B\n"); } else { printf("C\n"); } } 4题目:构造一个一元二次方程,方程有两个不相等的实数解,将两个实数解输出出来。 (1)截屏:

c语言实训心得体会篇

c语言实训心得体会一:c语言实训心得体会 在科技高度发展的今天,计算机在人们之中的作用越来越突出。而c语言作为一种计算机的 语言,我们学习它,有助于我们更好的了解计算机,与计算机进行交流,因此,c语言的学 习对我们尤其重要。 在这个星期里,我们专业的学生在专业老师的带领下进行了c语言程序实践学习。在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了 解的范围,对里面的好多东西还是很陌生,更多的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。 由于时间的关系,我们的这次实践课程老师并没有给我们详细的介绍,只是给我们简单的介 绍了几个比较重要的实际操作。包括了程序模块处理。简单界面程序。高级界面程序。程序 的添加修改。用程序做一元线性回归处理以及用c语言程序来画粒度分布图等这几样比较重 要的时间操作。 上机实验是学习程序设计语言必不可少的实践环节,特别是c语言灵活、简洁,更需要通过 编程的实践来真正掌握它。对于程序设计语言的学习目的,可以概括为学习语法规定、掌握 程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。 学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。因为 学时所限,课程不能安排过多的统一上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基矗为此,我们

结合课堂讲授的内容和进度,安排了12次上机实验。课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如 下几个方面: 1.加深对课堂讲授内容的理解 课堂上要讲授许多关于c语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背 是不可取的。然而要使用c语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语 言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来(转载自第。)理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。 学习c语言不能停留在学习它的语法规则,而是利用学到的知识编写c语言程序,解决实际 问题。即把c语言作为工具,描述解决实际问题的步骤,由计算机帮助我们解题。只有通过 上机才能检验自己是否掌握c语言、自己编写的程序是否能够正确地解题。 通过上机实验来验证自己编制的程序是否正确,恐怕是大多数同学在完成老师作业时的心态。但是在程序设计领域里这是一定要克服的传统的、错误的想法。因为在这种思想支配下,可 能你会想办法去"掩盖"程序中的错误,而不是尽可能多地发现程序中存在的问题。自己编好 程序上机调试运行时,可能有很多你想不到的情况发生,通过解决这些问题,可以逐步提高 自己对c语言的理解和程序开发能力。 2.熟悉程序开发环境、学习计算机系统的操作方法

c语言程序设计心得体会-心得体会范文

c语言程序设计心得体会-心得体会范文 二十一世纪是计算机的世纪,是一个全新的世纪,计算机正逐步入侵我们的生活。刚开始接触计算机的时候感觉很新奇,那时觉得计算机很神秘,于是就产生了以后一定要熟练掌控计算机的念头。怀着这个愿望,我选择了计算机科学与技术为专业,有点兴奋又有点担忧,兴奋的是以后可以经常接触和了解计算机了,担忧的是我几乎没有任何基础,怕跟不上大家的步伐。有死党说我杞人忧天,结果证实我忧得不无道理。依然清楚地记得第一学期的上机课,每次上机老师都计分,所以经常手忙脚乱,用惨不忍睹来形容是最适合不过了。 紧张的一个学期过后,我们迎来了c语言的学习和一位风趣博学的老师。虽然刚开始学习c语言的时候大家都一筹莫展,但在老师的鼓励和教育下一步步地往前迈,很令人欣慰。在这之后的学习中仍然困难重重,然而坚持到底就是胜利这个坚定的信念激励着我们勇往直前。c语言课本的学习总算结束了,多么崎岖的一条学习之路。 大学的教育模式和中学有很大不同,从平常的课程安排和教学就可以知道,但是独立完成课程设计和写论文这种任务对我们来说无疑是一个很大的挑战。十七周开始进行课程设计,老师要求我们写一个计算器的程序,起初大家都被难倒了,然后开始一步步地摸索,先查找有关资料,画计算器的图形,写了好长一段程序才把图形搞定,可老师一看都不满意,要求我们用循环来做,师令如山,不得不听从,

改吧,这一改又让大家死了好多脑细胞,感觉有点残忍。 完成了计算器的图形很有成就感,毕竟六月天坐在机子前不是令人愉快的事。接下来要进行计算器内部运算程序的设计,说实话,我根本就不知道要做,更不清楚如何着手,不是我妄自菲薄,独立完成这个程序设计根本就是不可能的事,可想而知只能寻求帮助了,但这个程序不是轻而易举就能完成的。有些积极的同学从网上搜索了好多有关这方面的资料,拼拼凑凑,进行了多次讨论,终于完成了这部分的设计,在同学的互相帮助下,大多数人都完成了最重要的一部分程序设计。 接下来就是用循环语句使按键上的数字有闪烁的功能,这个因为之前老师有过提点,所以相对简单一些。 完成了整个程序设计,这次课程设计就接近尾声了,不过最后的课程报告着实让我们苦恼了一两天。小小的抱怨一下应该没关系吧。 整个课程设计终于完成了,完成的好辛苦,好艰难,但还是顺利的完成了。我们付出了很多心血和汗水,但我认为我们得到的更多。如果没有同学们的互相帮助,这次课程设计就不会这么顺利,这种同舟共济的团队精神深深震撼了我,《礼记学记》上也有讲过:独学而无友,则孤漏而寡闻。同时有些同学积极的态度让我感到一丝惭愧,他们所体现出的坚持不懈的品质更令我折服。当然这次程序设计也让我看到了自己基础的薄弱。古人有诗云:路漫漫其修远兮,吾将上下而求索。从今天起我将不断继续求索,学习之路也好,人生之路也罢。 总之我受益匪浅。

心得体会 c语言实训心得体会范文

c语言实训心得体会范文 的理论知识转化基本技能。这次的实训,使我对C语言的学习产生浓厚的兴趣。 还是这次实训,最令人激动的就是合作做项目,虽然那只是一个很小很小的项目。每天大家来得很早,大家在一起学习,取长补短,我们很好的在实训中长知识,提高我们的学习热情。实训中深切体会到了老师认真负责的伟大的精神和热情为同学指导的促学方式,虽然对有些时候老师没给我们指出解决问题的方法有些小抱怨,但是到了结束时才知道,这种教学让我们自己学会了自学,学会了去看懂别人的代码。更多是老师给的感动,每天在我们来之前就到了教室,在讲课中海给我们分享他在公司上班的一些心得和体会,还有那些我们应该注意的事项,这些是平时上课时无法学到的,是更深层次的巨大收获。通过这次实训,也使我们发现了许多问题。 在实训中,我们认识到自己还有很多的知识没学好,基础知识没理清,而且许多东西还要去翻书,去上网搜索。而且遇到一些小错误运行不出来,就会烦躁不安,觉得有些自暴自弃或者抱怨项目的变态,以后要克服,尽量保持一颗良好的心态,学好C语言,也学好用C 语言编写一个按要求的系统。 还有就是对于未来,近程就是下学期,我觉得我还有许多方面需要提高。首先我要继续学习好C语言的基础知识,然后能在电脑上熟练的运用。然后每天都能写一些程序,上网时候多看一些优秀的教程和优秀的代码。遇到问题时多和同学讨论,并且多弄出几套方案,

多锻炼自己结局问题的能力和与同学合作的能力。 总之,这一切都成为我记忆里面的一个篇章,更是在C语言编程上的一个里程碑。 c语言实训心得体会范文二 在科技高度发展的今天,计算机在人们之中的作用越来越突出。而c语言作为一种计算机的语言,我们学习它,有助于我们更好的了解计算机,与计算机进行交流,因此,c语言的学习对我们尤其重要。 在这个星期里,我们专业的学生在专业老师的带领下进行了c语言程序实践学习。在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,更多的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。 由于时间的关系,我们的这次实践课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。包括了程序模块处理。简单界面程序。高级界面程序。程序的添加修改。用程序做一元线性回归处理以及用c语言程序来画粒度分布图等这几样比较重要的时间操作。 上机实验是学习程序设计语言必不可少的实践环节,特别是c语言灵活、简洁,更需要通过编程的实践来真正掌握它。对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。 学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂

C语言程序设计心得体会

C语言程序设计心得体会 在这为期半个月的时间内,通过我们小组各成员之间的相互讨论和合作,我们完成了学生信息管理系统的程序设计,更值得高兴的是我们的程序得到了大家的喜爱,在每次的简报中都得到了较好的成绩。 虽然在上个学期中,我们已经学习了《C 语言程序设计》这门课,但是我所学的知识最多也就是在做作业的时候才会用到,平时没有什么练习的机会,这次的课程设计是我第一次通过自己构思,和同学讨论并且不断查阅资料来设计一项程序。这次设计,不仅巩固了我以前所学的知识,还让我对c语言有了更深一步的了解,掌握了更多的技巧和技能。 C语言是计算机程序设计的重要理论基础,在我们以后的学习和工作中都有着十分重要的地位。要学好这种语言,仅仅学习课本上的知识是不够的,还要经常自己动手,有较强的实践能力。只有多动手,经常编写程序,才能发现我们学习上的漏洞和自己的不足,并在实践中解决这些问题,不断提高自己转化知识的能力。 在我们小组有解决不了的问题时,我们会主动查阅相关的资料,或向其他同学询问,这不仅丰富了我们的知识,还增进了我们同学之间的友谊。为了增大信息的安全性,需要用文件来存储信息,由于我们在上课时不注重对文件的运用,所以在这方面有较大的困难。我先将书本认认真真地看了一遍,又做了一下课后习题来验证和增进自己的理解,终于,经过我们的不懈努力,我们小组的程序有了突破,成功地实现了用文件来保存并查看学生的信息。 这次设计中,我的收获还有就是学会了用流程图来表达自己的想法,并根据流程图来逐步实现程序的功能。开始的时候,我画流程图很是困难,需要一个多小时才能清楚的根据自己的想法画出图来,后来画多了,就更加了解它的功能,十分得心应手,能够比较快而准确的画出来。 在这次课程设计中,我们首先对系统的整体功能进行了构思,然后用结构化分析方法进行分析,将整个系统清楚的划分为几个模块,再根据每个模块的功能编写代码。而且尽可能的将模块细分,最后在进行函数的调用。我们在函数的编写过程中,我们不仅用到了for循环、while循环和switch语句,还用到了函数之间的调用(包括递归调用)。由于我们是分工编写代码,最后需要将每个人的代码放到一起进行调试。因为我们每个人写的函数的思想不都一样,所以在调试的过程中也遇到了困难,但经过我们耐心的修改,终于功夫不负有心人,我们成功了! 在参考书上,我们不仅参考了曾经学过的高敬阳主编的《c语言程序设计》,还找到了由谭浩强主编的第三版《c语言》进行参考。

C语言的实习心得体会-实习心得体会

C语言的实习心得体会-实习心得体会 在这个星期里,我们专业的学生在专业老师的带领下进行了c语言程序实习学习。在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,更多的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。 由于时间的关系,我们的这次实习课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。包括了程序模块处理.简单界面程序.高级界面程序.程序的添加修改.用程序做一元线性回归处理以及用c语言程序来画粒度分布图等这几样比较重要的时间操作。 上机实验是学习程序设计语言必不可少的实习环节,特别是c语言灵活、简洁,更需要通过编程的实习来真正掌握它。对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。 学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。因为学时所限,课程不能安排过多的统一上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c 语言开发程序的能力,为今后的继续学习打下一个良好的基础。为此,我们结合课堂讲授的内容和进度,安排了12次上机实验。课程上机

实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面: 1.熟悉程序开发环境、学习计算机系统的操作方法 一个c语言程序从编辑、编译、连接到运行,都要在一定的外部操作环境下才能进行。所谓环境就是所用的计算机系统硬件、软件条件,只有学会使用这些环境,才能进行程序开发工作。通过上机实验,熟练地掌握c语言开发环境,为以后真正编写计算机程序解决实际问题打下基础。同时,在今后遇到其它开发环境时就会触类旁通,很快掌握新系统的使用。 2.学习上机调试程序 完成程序的编写,决不意味着万事大吉。你认为万无一失的程序,实际上机运行时可能不断出现麻烦。如编译程序检测出一大堆错误。有时程序本身不存在语法错误,也能够顺利运行,但是运行结果显然是错误的。开发环境所提供的编译系统无法发现这种程序逻辑错误,只能靠自己的上机经验分析判断错误所在。程序的调试是一个技巧性很强的工作,对于初学者来说,尽快掌握程序调试方法是非常重要的。有时候一个消耗你几个小时时间的小小错误,调试高手一眼就看出错误所在。 通过这次为数不多的几天计算机实习学习,我们了解了一些关于c语言的知识,理解巩固了我们c语言的理论知识,着对我们将来到社会工作将会有莫大的帮助。同时它让我知道,只要你努力,任何东西都不会太难。

相关文档
最新文档