C语言上级实验报告(经典3篇)

时间:2014-06-04 04:24:36
染雾
分享
WORD下载 PDF下载 投诉

C语言上级实验报告 篇一

标题:C语言上级实验报告

在本次C语言上级实验中,我选择了一个较为复杂的题目,即实现一个简单的学生成绩管理系统。该系统可以实现学生信息的录入、查询、修改和删除等功能。

首先,我使用C语言的结构体来定义学生信息的数据结构,包括学号、姓名、性别和成绩等字段。然后,通过使用文件读写操作,将学生信息保存到磁盘文件中,以便下次使用时可以直接读取。

接下来,我实现了学生信息的录入功能。通过用户输入学生的相关信息,将其保存到内存中的数据结构中,并将其写入磁盘文件中。在录入过程中,我使用了循环和条件判断等控制结构,以确保输入的数据的合法性。

为了方便用户对学生信息进行查询,我实现了学生信息的查询功能。用户可以输入学号或姓名来查询学生的具体信息,系统会根据用户输入的关键字,在内存中的数据结构中进行查找,并将查找结果显示给用户。在查询过程中,我使用了循环和条件判断等控制结构,以及字符串比较函数来实现模糊查询。

为了保证学生信息的准确性,我还实现了学生信息的修改和删除功能。用户可以根据学号或姓名来选择要修改或删除的学生信息,并进行相应的操作。在修改和删除过程中,我使用了循环和条件判断等控制结构,以及文件读写操作来实现数据的更新和删除。

最后,我对整个系统进行了测试和调试,确保每个功能都能正常运行。通过测试,我发现系统可以正确地录入、查询、修改和删除学生信息,并能够保持数据的一致性。

通过本次实验,我对C语言的文件读写操作、结构体和控制结构等知识有了更深入的了解。同时,我也学会了如何设计和实现一个简单的学生成绩管理系统。这次实验不仅加深了我对C语言的理解,也提高了我的编程能力和解决问题的能力。

C语言上级实验报告 篇二

标题:C语言上级实验报告

在本次C语言上级实验中,我选择了一个挑战性较高的题目,即实现一个简单的迷宫游戏。该游戏可以让玩家通过键盘输入控制角色移动,并在迷宫中探索目的地。

首先,我使用C语言的二维数组来表示迷宫地图,其中1表示墙壁,0表示通路。通过读取地图文件,将地图数据存储在内存中的二维数组中。

接下来,我实现了角色的移动功能。通过监听用户的键盘输入,根据输入的方向键来移动角色。在移动过程中,我使用了循环和条件判断等控制结构,以及数组的索引访问操作来实现角色的移动。

为了增加游戏的趣味性,我还为角色添加了一些特殊功能。比如,角色可以收集道具,道具可以增加角色的生命值或速度等属性。在收集道具过程中,我使用了条件判断和变量操作等技巧,以及游戏界面的刷新来实现。

为了增加游戏的难度,我还实现了一些陷阱和敌人。角色如果触碰到陷阱,将会损失生命值;如果被敌人追上,将会失败。在处理陷阱和敌人的逻辑中,我使用了条件判断和循环等控制结构,以及碰撞检测函数来判断角色与陷阱或敌人的碰撞。

最后,我对整个游戏进行了测试和调试,确保每个功能都能正常运行。通过测试,我发现游戏可以正确地控制角色移动、收集道具和避开陷阱和敌人,增加了游戏的可玩性和挑战性。

通过本次实验,我对C语言的数组、循环、条件判断和函数等知识有了更深入的了解。同时,我也学会了如何设计和实现一个简单的迷宫游戏。这次实验不仅加深了我对C语言的理解,也提高了我的编程能力和游戏设计能力。

C语言上级实验报告 篇三

  篇一:C语言程序设计 实验报告---范例

  C语言程序设计实验报告

  学号:

  姓名:

  1、设计一个函数fc,统计数组中偶数和奇数的个数,数组元素个数不多于10个。编写main函数,正确调用fc函数,实现对数组a的统计,输出统计结果。

  #include "stdio.h"

  int j=0;

  int fun(int a[],int n)

  {

  int i,c=0;

  for(i=0;i<n;i++)

  if(a[i]%2==0) c=c+1;

  else j=j+1;

  return(c);

  }

  int main()

  {

  int i,num[5];

  for(i=0;i<5;i++)

  scanf("%d",&num[i]);

  printf("oushu: %d ",fun(num,5));

  printf("jishu: %d ",j);

  return 0;

  }

  篇二:C语言_上机实验报告样例

  实 验 报 告

  课程名称 程序设计语言C 实验名称 控制结构程序设计

  姓 名

  学 号

  专业班级 材料1006

  实验日期

  成 绩

  指导教师

  一、 实验目的

  1. 学会正确使用关系运算符和关系表达式、逻辑运算符和逻辑表达式。

  2. 掌握if语句和switch语句的结构和使用。

  3. 掌握用while语句,do-while语句和for语句实现循环的方法。

  4. 编写含有选择结构的程序

  5. 练习循环程序的设计和调试一、实验目

  P二,实验内容。

  1分段函数求最大值,

  2. 保存源程序,文件名为xt7-4.c

  3. 运行程序,输入5

  程序输出如下:

  array a:

  1 4 6 9 13 16 19 28 40 100

  data:5

  Now,array a:

  1 4 5 6 9 13 16 19 28 40 100

  习题7.6

  1.打开TC++3。1集成开发环境,编写程序代码如下:

  #include

  #define N 11

  void main()

  {

  int i,j,a[N][N];

  for(i=1;i<N;i++)

  {

  a[i][i]=1;

  a[i][1]=1;

  }

  for(i=3;i<N;i++)

  for(j=2;j<=i-1;j++)

  a[i][j]-a[i-1][j-1]+a[i-1][j];

  for(i=1;i<N;i++)

  {

  for(j=1;j<=i;j++)printf("%6d",a[i][j]);

  printf(" ");

  }

  printf(" ");

  }

  2.保存源程序,文件名为xt7-6.c

  3.输出结果:

  1

  1

  1

  1

  1

  1

  1

  1

  1

  1 1 2 1 3 3 1 4 6 4 1 5 10 10 5 1 6 15 20 15 6 1 7 21 35 35 21 7 1 8 28 56 70 56 28 8 1 9 36 84 126 126 84 36 9 1

  习题7.8

  1.打开TC++3。1集成开发环境,编写程序代码如下:

  #include

  #define N 4

  #define M 5

  void main()

  {

  int i,j,k,a[N][M],max,maxj,flag;

  printf("please input matrix: ");

  for(i=0;i<N;i++)

  for(j=0;j<M;j++)

  scanf("%d",&a[i][j]);

  for(i=0;i<N;i++)

  {

  max=a[i][0];

  maxj=0;

  for(j=0;j<M;j++)

  if(a[i][j]>max)

  {

  max=a[i][j];

  maxj=j;

  }

  flag=1;

  for(k=0;k<N;k++)

  if(max>a[k][maxj])

  {

  flag=0;

  continue;}

  if(flag)

  {

  printf("a[%d][%d]=%d ",i,maxj,max);

  break;

  }

  }

  if(! flag)

  printf("It is not exist! ");

  }

  2.保存源程序,文件名为:xt7-8.c

  3.输入please input matrix:

  1

  2

  3

  4 2 3 4 5 4 6 8 10 6 9 12 15 8 12 16 20

  输出结果:a[0][4]=5

  五、实验分析和总结

  1. 本程序的功能是将数以数组输入,结合循环进行排序,运算等, 算法的基本思想是进

  行数组引用。

  2. 程序编译和运行时出现了如下错误:

  数组中分号乱用

  出错的原因和调试(纠错)步骤如下:

  对数组引用不够熟练,理解不够透彻。

  3. 通过编写本程序,有如下,体会:数组引用很方便,能使大量运算简化。

  篇三:C语言实验报告

  C语言程序设计实验报告

  1 实验目的

  第一个实验:

  1熟练掌握顺序结构程序设计; ○

  ○2学会正确使用逻辑运算符及逻辑表达式;

  ○3熟练掌握if、ifelse、ifelse if语句,掌握if语句中的嵌套关系和匹配原则,利用if语句实现分支选择结构;

  ○4熟练掌握switch语句格式及使用方法,利用switch语句实现分支选择结构 ○5掌握简单、常用的算法,并在编程过程中体验各种算法的编程技巧,进一步学习调试程序,掌握检查语法错误和逻辑错误的的方法。

  第二个实验:

  ○1熟练掌握while语句、do-while语句和for语句格式及使用方法,掌握三种循环控制语句的循环过程以及循环结构的嵌套,利用三种循环语句实现循环结构; ○2掌握简单、常用的算法,并在编程过程中体验各种算法的编程技巧; ○3进一步学习调试程序,掌握语法错误和逻辑错误的检查方法。

  2 实验内容

  第一个实验:

  输入一个整数m,将其数值按照大于0,小于等于0两个类别分类显示。 要求:

  1该程序利用if-else语句实现; ○

  2将变量m定义为整型; ○

  3通过scanf函数输入变量m的值; ○

  4输入整数m前,利用puts()或printf()给出提示信息; ○

  5输出结果时有必要的说明,例如:输入358时,显示 358 ○is greater than 0,输入-23时,显示 -23 is less than or equal to 0;

  6运行程序,分别输入123,0,-22,并检查输出信息的'的正确性。 ○

  第二个实验:

  输入一串字符(以回车键结束),统计其中数字、大写字母、小写字母、以及其他字符的个数。

  要求:

  1通过键盘输入字符串;○

  2在输入字符串之前给出相应提示;○

  3按照数字、大写字母、小写字母和其他字符数的顺序输出结果。○

  3 算法描述流程图

  4 源程序

  第一个实验:

  #include

  main()

  {

  int m;

  scanf("%d",m);

  printf("enter a character:");

  {

  if(m>0)

  printf("%d is greater than 0",m);

  else

  printf("%d is less than or equal to 0",m);

  }

  }

  第二个实验:

  #include

  #include

  main()

  {

  char c;

  int w=0,x=0,y=0,z=0;

  printf("enter characters:");

  while((c=get))!=' ')

  {

  if((c>='0'&&c<='9'))

  w++;

  else if(c>='A'&&c<='Z')

  x++;

  else if(c>='a'

;&&c<='z')

  y++;

  else

  z++;

  }

  printf("w=%d,x=%d,y=%d,z=%d",w,x,y,z); }

  5 测试数据

  第一个实验:

  测试数据为:123,0,-22

  第二个实验:

  所输入的字符串为:

  6 运行结果

  7 出现问题及解决方法

  1第一个实验中,○对于“printf("%d is greater than 0",m);”的输入存在一些问题;通过查课本,找到类似输出形式的写法;

  2第二个实验中需要用到函数string,通过百度查阅弄懂这个函数的使用方法,○

  还是对这个用法不太了解。

  8 实验心得

  1对if,if-else,if-else if语句的使用方法及具体含义有了更深次的了解,○

  对编写条件控制结构的程序有了一定的认识和思路;

  2对于do-whil

  e,while了解不太深刻,○需要进一步学习和上机实验的练习进行巩固和熟练;

  3对于调试程序中出现的error和warning的解决方法有了更深的认识。 ○

C语言上级实验报告(经典3篇)

手机扫码分享

Top