C语言实验报告2

合集下载

C语言实验报告范例

C语言实验报告范例

C语言实验报告范例
实验题目:C语言实现银行家算法
实验目的:掌握C语言实现银行家算法的基本思想,并能熟练应用矩阵处理实现银行
家算法的功能。

实验内容:
1. 利用C语言实现银行家算法的核心思想,利用矩阵处理实现其核心功能模块。

2. 银行家算法是一种负责实现“当前分配”的基于矩阵的编程模型。

该算法可以通
过利用安全状态来识别一次可行解,从而解决请求和分配资源的冲突问题。

3. 根据上述信息,我们设计了C语言实现银行家算法的基本框架,包括初始化步骤、可行性检查步骤、回滚步骤以及主步骤。

4. 在初始化步骤中,我们采用矩阵存储技术,将银行家算法中的各个参数保存起来,具体过程中采用数组存储。

5. 在可行性检查步骤中,我们判断当前系统状态是否处于安全状态,如果处于安全
状态,则继续完成下一步余额检查;否则,处理发生冲突时,回滚处理。

6. 在主步骤中,我们过程中判断若系统处于可行状态,则继续分配资源;否则,则
执行回滚操作,将系统恢复到上一状态。

实验结果和结论:
通过实验,我们学会了如何使用C语言来实现银行家算法,进而通过实现矩阵处理,
实现了该算法的核心功能模块。

此外,我们还学习了安全状态机制,进行系统可行性检查,和完成系统的分配工作,以达到有效地实现银行家算法的目的。

本次实验结论如下:
1. 通过C语言实现银行家算法中的核心功能模块,使系统的可行性检查得以有效实现;
2. 利用矩阵存储来实现系统的可行性检查,从而有效地节省时间和提高资源分配的
效率;
3. 通过回滚处理,有效地解决资源请求和分配冲突问题,使系统能够有效地实现安
全状态。

C语言程序设计实验实验报告

C语言程序设计实验实验报告

C语⾔程序设计实验实验报告《C语⾔程序设计实验》实验报告实验九⽂件编程(⼀)班级:_07某某专业1班_学号:______姓名:___实验样例_____⽇期:___2008.6.10_____台州学院数信学院计算机系制作⼀、实验⽬的和要求综合使⽤基本结构、基本算法、函数、指针、结构体、链表等知识设计程序。

⼆、实验指导1、注意:本次实验为综合性实验,需要综合本课程以前所学内容,完成编制⼀个⼩型应⽤程序。

需要复习课本以前所学内容,浏览上课讲解的相关内容。

2、实验时间安排:准备实验⽅案,上课时上机编程,课余完成整个设计并完成实验报告。

3、实验具体要求:以⼀张假想的学⽣期中成绩表为实验对象,编制⼀个⼩型应⽤程序,可以考虑实现以下功能:(1)成绩修改;(2)成绩查询;(3)成绩统计;(4)成绩输⼊。

也可以实现其他⾃定义的功能。

界⾯采⽤简易菜单形式,可以分级显⽰。

实验需要进⾏以下步骤:需求分析、程序设计、程序调试、程序运⾏,并对程序运⾏效果进⾏分析,提出改进⽅案。

初步锻炼学⽣的程序设计能⼒、程序调试能⼒、对实验结果进⾏综合分析的能⼒。

4、实验成绩评价标准:参见成绩评定表。

四、实验报告内容(参见样本,请另附页)实验报告必须包含以下内容:1、对你设计的程序功能进⾏的较详细描述。

2、画出程序测试⽤的学⽣期中成绩表(包含:表头、若⼲⾏包含学⽣成绩等信息的数据⾏)。

3、给出程序清单(包含结构体的声明与定义、所有的函数声明、所有的全局变量、所有的函数定义、必要的注释。

注:如果程序过长,可以不⽤给出所有的函数定义,只给出主要的函数定义)。

4、运⾏结果(写出运⾏时的主界⾯、各模块的实现界⾯等,不作具体要求,但要求能清晰地体现出程序的功能)。

5、对你的设计作⼀个评价(可以包含你所花的时间、精⼒,你遇到的困难及如何解决的,你的设计过程所遇到的其他事情;必须包含你对设计的客观评价,以及提出的改进⽅案)。

1、程序功能描述:(略)2、成绩表样表:3、程序清单:(红⾊部分是和上⼀个程序的区别之处)#includestruct student /*期中成绩表的结构声明*/{int num;char name[20];char sex;float YuWen;float ShuXue;float YingYu;float totle;};#define MAX_STU_NUMBER 100 /*宏定义最⼤学⽣数为100⼈*/struct student Stu[MAX_STU_NUMBER]; /*⼀次性定义100个学⽣的存储空间*/int STU_NUMBER; /*存放学⽣数*/char *FileName = "chengji.txt"; /*成绩存放的⽂件*//*所有的函数声明:*/int SelectMainMenu(); /*显⽰并选择主菜单。

C语言实验报告(函数应用)

C语言实验报告(函数应用)

C语言实验报告(函数应用)实验目的:1. 掌握C语言函数的定义方法和调用方法;2. 掌握函数的参数传递和返回值的使用方法;3. 熟悉C语言库函数的使用方法。

实验原理:C语言中函数是程序的基础构件,函数可以定义在任何地方或者文件中。

在场合需要使用函数时,只要调用函数名称,即可执行函数,然后返回将结果。

函数定义的一般形式为:类型说明符函数名(形式参数列表){函数体语句return 返回值;}函数名是对函数定义的标识符。

形式参数列表指定函数使用的形式参数。

返回值是函数的结果。

在调用函数时,必须知道函数名称和使用的参数。

当调用函数时,实际参数传递给函数。

函数的返回值传递给调用者的程序段,通常是保存在调用者中的变量中。

C语言库函数是指提供了重要功能的函数。

这些函数可以在使用时直接调用。

实验步骤:1. 实现一个求和函数add代码:int add(int a, int b){int c = a + b;说明:定义了一个名为add的函数,函数有两个参数a和b,函数体内进行a和b的加法运算,并将结果赋值给c,最终返回c作为函数的结果。

#include <stdio.h>int x, y;printf("请输入两个整数:\n");scanf("%d %d", &x, &y);printf("%d + %d = %d\n", x, y, add(x, y));说明:主函数中调用add函数,将输入的两个数作为参数传递给add函数,并输出结果。

3. 实现一个数组平均值函数averagefor(i=0; i<len; i++){sum += arr[i];return (float)sum/len;int arr[5] = {1, 2, 3, 4, 5};len = sizeof(arr)/sizeof(arr[0]);printf("数组arr的平均值是%f\n", average(arr, len));5. 使用C语言库函数实现字符串反转函数strrevvoid strrev(char s[]){char temp;说明:该程序中使用C语言库函数strlen求出字符串长度,然后进行字符交换操作,实现字符串反转。

c语言实验报告心得体会范文【四篇】

c语言实验报告心得体会范文【四篇】

c语言实验报告心得体会范文【四篇】c语言实验报告心得体会范文一在科技高速发展的今天,计算机互联网在人们之中的作用越来越突出。

而c语言作为一种计算机的语言,我们学习它,有助于我们更好的了解计算机,与计算机进行交流,因此,c语言的学习对我们尤其重要。

在这个星期里,我们专业的学生在专业老师的带领下进行了c语言程序实践学习。

在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,更多的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。

学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。

因为学时所限,课程不能安排过多的统一上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基础。

为此,我们结合课堂讲授的内容和进度,安排了12次上机实验。

课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面: 1、加深对课堂讲授内容的理解课堂上要讲授许多关于c语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。

然而要使用c语言这个工具解决实际问题,又必须掌握它。

通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。

对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。

2、熟悉程序开发环境、学习计算机系统的操作方法一个c语言程序从编辑、编译、连接到运行,都要在一定的外部操作环境下才能进行。

所谓&quot;;环境&quot;;就是所用的计算机系统硬件、软件条件,只有学会使用这些环境,才能进行程序开发工作。

通过上机实验,熟练地掌握c语言开发环境,为以后真正编写计算机程序解决实际问题打下基础。

C语言_实验二、选择结构程序设计

C语言_实验二、选择结构程序设计

实验二 选择结构程序设计一、实验目的1. 掌握关系表达式和逻辑表达式的使用。

2. 熟悉选择结构程序设计。

3. 熟练使用if 语句进行程序设计。

4. 使用switch 语句实现多分支选择结构。

二、实验内容(1 计算a+|b| 2 判断一个整数是否可以被3和5整除)1.[目的]掌握判断一个字符型数据是否数字字符的方法,以及数字字符转换为相应整数的方法。

[题目内容]从键盘输入一个字符型数据,若输入一个数字字符('0'-'9'),则将其转换成相应的整数显示出来;若输入其它字符,则显示出错信息。

[输入]一个字符型数据[输出]整数或出错信息[提示] 根据字符型数据的ASCII 码值是否在‘0’字符与‘9’字符之间进行判断。

使用if …else …语句和复合语句。

2.[目的]掌握条件表达式的使用[题目内容] 编写一个程序,其功能为:从键盘输入三个数x 、y 、z ,判断x+y=z 是否成立,若成立输出‚x+y=z ‛的信息,否则输出‚x+y!=z ‛的信息。

[输入] 三个数x 、y 、z[输出] ‚x+y=z ‛或‚x+y!=z ‛[提示] 条件判断表达式x+y==z3.[目的]掌握求最大值最小值的方法。

[题目内容] 编写一个程序,其功能为:输入三个整数,输出最大数和最小数。

[输入] 三个整数[输出] 最大值和最小值[提示] 设置最大值变量max 和最小值变量min ;首先比较a,b 的大小,并把大数存入max , 小数存入min ;然后最大值变量max 和最小值变量min 再与c 比较,若c 大于max ,则max 取值c ,否则保持不变;如果c 小于min ,则min 取值c ,否则保持不变。

最后输出max 和min 的值。

使用if …else …语句、if 语句以及复合语句。

4.[目的]运用已学知识解决实际问题。

[题目内容]如下两个线性方程组的两个未知数为x1和x2:ax 1+bx 2=mcx 1+dx 2=n该方程的唯一解为(ad-cb 不等于零时):cb ad bn md x --=1 bcad mc na x --=2 请编写一个程序,读取a 、b 、c 、d 的值,计算x1和x2的值。

c语言实验报告

c语言实验报告

计算机软件技术基础实验报告实验一:线性表的排序与查找一.实验内容a)键盘输入一组无序数据,添加到线性表中;b)排序线性表并输出排序结果;c)键盘输入一个数,并插入到排好序的线性表中(要求插入后的表仍为有序表),输出结果;d)键盘输入一个数,并从线性表中删除相应的数据,输出结果。

二,源程序// Experiment1。

cpp :定义控制台应用程序的入口点。

//#include "stdafx.h”#include "iostream”#include 〈conio。

h〉// 程序实现有各种方法,这里给出一个实例。

// 定义一个线性表const int nMaxSize = 15;// 最大值int nLen = 0; // 表中元素个数int nLinearList[nMaxSize];// 定义操作void LSort();void LOut();void LInsert(int n);void LDelete(int n);int main(int argc,TCHAR*argv[]){// 输入数据并放入线性表中printf(”Pleas e input data\n"); // std::cout 〈< "Please input data\n”;int nIn = 0;for (int i = 1; i <= 10;i++){scanf(”%d”,&nIn);// std::cin >〉nIn;nLinearList[i] = nIn;nLen++;}LSort();// 排序线性表LOut();// 输出结果printf(”Please input a data to i nsert \n”);scanf(”%d”,&nIn);LInsert(nIn);// 输入一个数字,并插入到线性表中LOut();printf(”Please input a data to delete \n");scanf("%d”,&nIn);LDelete(nIn);// 输入一个数字,并从线性表中删除LOut();char chTmp;printf(”Please input a char to finish this program.");chTmp = getch();return 0;}void LSort()// 冒泡排序,由大到小{int j,F,k,M;F=nLen;while(F〉0){k=F-1;F=0;for(j=1;j<=k;j++){if(nLinearList[j]〈nLinearList[j+1]){M=nLinearList[j];nLinearList[j]=nLinearList[j+1];nLinearList[j+1]=M;F=j;}}}}void LOut(){printf("\n”);for (int i = 1;i 〈= nLen;i++){printf( "%d, ", nLinearList[i]);}printf(”\n”);}void LInsert(int n){int i,j;i=1;while (i<nLen){ if(nLinearList[i]〈=n){nLen++;for(j=nLen;j>=i;j—-)nLinearList[j+1]=nLinearList[j];nLinearList[i]=n;break;}i++;}}void LDelete(int n){int i,j;for(i=1;i<=nLen;i++){if(nLinearList[i]==n){for(j=i;j〈=(nLen—1);j++)nLinearList[j]=nLinearList[j+1];nLen—-;break;}}}三运行结果实验2:栈与队列的应用一.实验内容a)键盘输入算数表达式,并放入队列当中;b)应用栈的概念设计表达式求值算法;输出表达式求值结果二.源程序// Experiment2。

《C语言程序设计》实验报告(实验1-12)

《C语言程序设计》实验报告(实验1-12)

《C语言程序设计》实验报告(实验1-12)《C语言程序设计》实验报告20XX~20XX学年第二学期班级姓名学号指导教师实验一实验项目名称:C程序的运行环境和运行C程序的方法所使用的工具软件及环境:Visual C++ 一、实验目的:1.了解在Visual C++ 环境下如何xx、编译、连接和运行一个C程序; 2.通过运行简单的C程序,初步了解C 源程序的特点。

二、预习内容:教材《C语言程序设计教程》第1章。

三、实验内容:1. 在Visual C++ 环境下输入并运行下面的程序:#include int main( ) {printf("This is a C program.\\n"); return 0; }2. 在Visual C++ 环境下输入下面的程序(有语法错误),编译、连接、调试该程序,直至程序无语法错误,然后运行程序,并观察分析运行结果。

#include int main( ) {int a,b,sum a=3; b=4; sun=a+b;print(“%d+%d=%d\\n”,a,b,sum); return 0; }四、实验结果:1. 运行结果(或截图):This is a C program.Press any key to continue- 1 -2. (1) 改正后的源程序:#include int main( ) {int a,b,sum; a=3; b=4; sum=a+b;printf(\ return 0; }(2) 运行结果(或截图):3+4=7五、思考题:1. 一个C程序上机的步骤有哪些?答:上级输入与xx源程序—对原程序进行编译–与库函数链接–运行可执行的目标程序。

2. 组成C程序的基本单位是函数,一个函数包括哪几个部分?答:一个函数包括两部分:分别为函数头或函数首部和函数体。

成绩指导教师签名实验二实验项目名称:数据类型、运算符和表达式所使用的工具软件及环境:Visual C++ 一、实验目的:1.掌握整型、实型与字符型这三种基本类型的概念;2.掌握常量及变量的使用方法;3. 掌握基本算术运算符及其表达式的使用方法;4. 掌握++、--运算符、赋值运算符及其表达式的使用方法。

c语言实验报告总结

c语言实验报告总结

c语言实验报告总结在大学的计算机科学与技术专业中,学习C语言是一个非常重要的环节。

通过实验的方式,我们可以更好地理解和掌握这门编程语言。

在此次实验中,我对C语言的基本语法、数据类型、控制结构以及函数等方面进行了深入学习和实践,并取得了一定的成果。

首先,在实验中我通过编写简单的程序,掌握了C语言的基本语法规则。

C语言是一门结构化的编程语言,具有严格的语法要求。

通过实验,我深刻理解了C语言的语法规则对编写正确程序的重要性。

在每个实验环节中,我都会根据实验要求,遵循正确的语法结构,确保程序能够顺利运行。

其次,在实验过程中,我掌握了C语言的各种数据类型。

C语言中的数据类型包括整型、浮点型、字符型等多种类型,每一种类型都有其特定的用途和限制。

通过实验,我学会了如何定义不同类型的变量,并能够利用这些变量进行各种运算和操作。

这为我后续的程序设计提供了基础。

另外,在实验中我学习了C语言的控制结构。

控制结构在程序设计中起到了重要的作用,可以通过条件判断和循环控制实现不同的功能。

在实验中,我通过编写程序,学会了使用if语句、switch语句以及for、while、do-while等循环语句。

这些控制结构的灵活运用使我的程序更加健壮和实用。

在实验的过程中,我还学习了C语言中的函数。

函数是C语言中的一种代码模块,可以将一段具有特定功能的代码封装起来,提高代码复用性和可维护性。

通过实验,我了解了函数的定义、声明和调用等基本概念,并学会了如何自己编写函数,并在主程序中调用这些函数。

函数的使用使我的程序模块更加清晰,减少了代码的重复性,提高了代码的可读性和可维护性。

总的来说,这次C语言的实验让我受益匪浅。

通过实际动手编写程序,我不仅巩固了对C语言基础知识的理解,还掌握了更多实际应用的技巧。

同时,实验还培养了我的分析和解决问题的能力,使我在编写程序时可以更加深入地思考和分析。

在未来的学习和工作中,C语言将成为我必不可少的工具。

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

C语言实验报告
实验项目三 顺序结构程序设计
一、实验目的
(1)编写程序,输入三角形的三边长a、b、c,求三角形面积area。
二、实验环境
硬件:(1)学生用微机
(2)多媒体实验教室
软件:VC++ 6.0
三、实验结果
#include
#include
using namespace std;
void main()
{
int a,b,c;

while (1)
{
cout<<"a=3.0,b=4.0,c=5.0";
cin>>a>>b>>c;
if (a+b>c&&a+c>b&&b+c>a)
{
double m,s;
s = (a+b+c)/2;
m = sqrt(s*(s-a)*(s-b)*(s-c));
cout << "the area of triangle is" << m << endl;
break;

}
}

}
四、总结
通过这次实验,认识了顺序结构程序设计是什么,为接下来更好的学习奠定了一定的
基础。

一、实验目的
(2)设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。
二、实验环境
硬件:(1)学生用微机
(2)多媒体实验教室
软件:VC++ 6.0
三、实验结果
#include
#define PI 3.14
main()
{
double R=1.5,H=3.0;
double c,s1,s2,v1,v2;
c=2.0*PI*R;
s1=PI*R*R;
s2=4.0*PI*R*R;
v1=4.0/3.0*PI*R^3;
v2=s1*H;
printf("%f %f %f %f %f\n",c,s1,s2,v1,v2);
}
四、总结
通过这次实验,更加深刻的认识了顺序结构程序设计是什么,为接下来更好的学
习奠定了一定的基础。

一、实验目的
(3)分别用getchar函数和scanf函数读入2个字符给变量c1、c2,然后分别用putchar函
数和printf函数输出这两个字符。
二、实验环境
硬件:(1)学生用微机
(2)多媒体实验教室
软件:VC++ 6.0
三、实验结果
方法1:#include
void main()
{
char c1,c2;
getchar(c1);
getchar(c2);
c1+='0';
c2+='0';
printf("%c%c",c1,c2);
}
方法2:#include
#include

int main()
{
char ch1,ch2;
ch1=getchar();
getchar();
ch2=getchar();
putchar(ch1);
putchar(ch2);
return 0;
}
/*先输入第一个字符,然后回车,再输入第二个字符,回车后将两个字符输出*/
四、总结
通过这次实验,更加深刻的认识了顺序结构程序设计,为接下来更好的学习奠定了一
定的基础。

实验项目四 分支结构程序设计
一、实验要求
(1)输入四个整数,输出其中的最小值。
二、实验环境
硬件:(1)学生用微机
(2)多媒体实验教室
软件:VC++ 6.0
三、实验结果
#include
void main()
{
int min(int *p);
int a[4]={0,0,0,0};
int temp;
cout<<"请输入四个数:"<

for(int i=0;i<4;i++)
{
cin>>a[i];
}
cout<}

int min(int *pa)
{
int temp=*pa;
for(int j=1;j<4;j++)
{
*pa++;
if(*pa{
temp=*pa;
}
}
return temp;
}
四、实验总结
通过这次实验,深刻的认识了分支结构程序设计,为接下来更好的学习奠定了一定的基
础。

相关文档
最新文档