C语言程序设计试验五
《C语言程序设计》实验报告(实验1-12)
《C语⾔程序设计》实验报告(实验1-12)《C语⾔程序设计》实验报告2013~2014学年第⼆学期班级姓名学号指导教师实验⼀实验项⽬名称:C程序的运⾏环境和运⾏C程序的⽅法所使⽤的⼯具软件及环境:Visual C++ 6.0⼀、实验⽬的:1.了解在Visual C++ 6.0环境下如何编辑、编译、连接和运⾏⼀个C程序;2.通过运⾏简单的C程序,初步了解C源程序的特点。
⼆、预习内容:教材《C语⾔程序设计教程》第1章。
三、实验内容:1. 在Visual C++ 6.0环境下输⼊并运⾏下⾯的程序:#includeint main( ){printf("This is a C program.\n");return 0;}2. 在Visual C++ 6.0环境下输⼊下⾯的程序(有语法错误),编译、连接、调试该程序,直⾄程序⽆语法错误,然后运⾏程序,并观察分析运⾏结果。
#includeint main( ){int a,b,suma=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 continue2. (1) 改正后的源程序:#includeint main( ){int a,b,sum;a=3;b=4;sum=a+b;printf("%d+%d=%d\n",a,b,sum);return 0;}(2) 运⾏结果(或截图):3+4=7五、思考题:1. ⼀个C程序上机的步骤有哪些?答:上级输⼊与编辑源程序—对原程序进⾏编译–与库函数链接–运⾏可执⾏的⽬标程序。
2. 组成C程序的基本单位是函数,⼀个函数包括哪⼏个部分?答:⼀个函数包括两部分:分别为函数头或函数⾸部和函数体。
成绩指导教师签名实验⼆实验项⽬名称:数据类型、运算符和表达式所使⽤的⼯具软件及环境:Visual C++ 6.0⼀、实验⽬的:1.掌握整型、实型与字符型这三种基本类型的概念;2.掌握常量及变量的使⽤⽅法;3. 掌握基本算术运算符及其表达式的使⽤⽅法;4. 掌握++、--运算符、赋值运算符及其表达式的使⽤⽅法。
C语言实验五实验报告——数组
C语言实验五实验报告——数组一、实验目的:1.了解数组的概念和基本使用方法;2.掌握一维数组和二维数组的定义、初始化、赋值及基本运算实现;二、实验内容与方法1.理论部分数组是一些具有相同类型的数据元素按一定顺序排列组合而成的集合,在程序设计中它是一个变量列表,由若干相同数据类型的元素组成。
通常用一个名字和一个下标来表示,下标可理解为数组元素在数组中的位置编号。
数组的特点:数组是根据顺序排列的元素的集合;所有的元素必须是相同类型。
数组的定义方法:1. 定义数组,数组元素类型 + 数组名[元素的个数];2. 元素的个数必须是整型常量或变量,定义时必须明确、指定元素的个数;3. 声明一个数组时,除了要指定数组的类型外,还要指定数组的名称;4. 数组定义完后,需要对其中的每个元素进行初始化。
可以在定义数组时赋初值,也可以通过赋值符号,对数组元素逐个进行赋值。
数组的初始化:1. 元素个数之间用逗号分开,最后1个元素后无逗号;2. 支持部分元素初始化;3. 定义和初始化可以一步完成。
二维数组数组可分为一维和多维数组。
一维数组可以看作是包含多个元素的向量,而二维数组可以看做是包含了多个一维数组的矩阵。
二维数组有行号和列号,因此,它同样需要两个下标。
数组元素类型数组名[行数][列数];数组元素类型数组名[ ][ ] = { {元素1, 元素2, ……}, {元素1, 元素2, ……}, ……{元素1, 元素2, ……}}2.实验代码**问题1:**定义一个一维数组a,包含有5个元素,分别为1,2,3,4,5;**问题2:**定义一个一维数组a,接收用户从键盘输入的5个数值,分别打印存储的各个元素。
三、实验结果与分析结果分析:定义了一个5个元素的一维数组a,并初始化了各个元素的值,其元素分别为1,2,3,4,5.循环遍历一遍数组a,并打印数组元素。
程序执行正常。
3.针对问题3:定义一个二维数组a,由4行3列组成,每个元素初始化为0,打印存储的各个元素;程序运行结果如下:四、实验总结:该实验主要是通过对C语言数组的理论知识和基本操作进行练习,加深了对数组的了解和掌握。
《c语言程序设计》实验
《c语言程序设计》实验《C语言程序设计》实验是计算机科学与技术专业学生必须掌握的一门基础课程。
C语言以其高效、灵活和广泛的应用领域而闻名,是学习其他编程语言和进行系统软件开发的基础。
本实验课程旨在通过实践操作加深学生对C语言理论知识的理解和应用能力。
实验目的1. 掌握C语言的基本语法和结构。
2. 学会使用C语言进行基本的程序设计。
3. 理解程序设计中的问题解决策略。
4. 培养学生的编程思维和代码调试能力。
实验环境- 操作系统:Windows 10 或 Linux- 编译器:GCC (GNU Compiler Collection) 或 Visual Studio- 开发工具:Code::Blocks, Dev-C++ 或 Visual Studio Code实验内容实验一:C语言基础- 数据类型、变量声明和初始化- 运算符和表达式- 基本输入输出函数(`printf`, `scanf`)实验二:控制结构- 条件语句(`if`, `switch`)- 循环语句(`for`, `while`, `do-while`)实验三:数组和字符串- 一维数组和二维数组的声明、初始化和遍历- 字符串的声明、初始化和常用字符串处理函数实验四:函数- 函数的定义、声明和调用- 函数参数的传递(值传递和引用传递)- 递归函数的实现实验五:指针- 指针的基本概念和使用- 指针与数组的关系- 指针在函数中的应用实验六:结构体和联合体- 结构体和联合体的声明和使用- 结构体数组和指针- 结构体在函数中的应用实验七:文件操作- 文件的打开、关闭、读写操作- 文件指针的使用实验步骤1. 阅读实验指导书,理解实验目的和要求。
2. 根据实验内容,编写相应的C语言程序。
3. 在实验环境中编译并运行程序,观察结果是否符合预期。
4. 遇到问题时,尝试自行调试或查阅相关资料。
5. 完成实验报告,包括程序代码、实验结果和心得体会。
实验注意事项- 确保代码的可读性和规范性,遵循良好的编程习惯。
《C语言程序设计》实验设计习题答案
《C语言程序设计》实验设计习题答案C语言程序设计是计算机专业的一门基础课程,通过实验设计习题可以帮助学生巩固所学的C语言知识,并提升编程能力。
本文将为您提供《C语言程序设计》实验设计习题的答案,以帮助您更好地理解和掌握相关知识。
实验一:基本输入输出实验题目描述:请编写一个程序,实现输入两个整数并输出其和与积。
```c#include<stdio.h>int main(){int num1, num2;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);int sum = num1 + num2;int product = num1 * num2;printf("和:%d\n", sum);printf("积:%d\n", product);return 0;```实验二:判断奇偶数实验题目描述:请编写一个程序,实现判断输入整数是奇数还是偶数的功能,并输出结果。
```c#include<stdio.h>int main(){int num;printf("请输入一个整数:");scanf("%d", &num);if(num % 2 == 0){printf("%d为偶数\n", num);}else{printf("%d为奇数\n", num);return 0;}```实验三:求和实验题目描述:请编写一个程序,实现输入n个整数并输出其和。
```c#include<stdio.h>int main(){int n, num;int sum = 0;printf("请输入整数的个数:");scanf("%d", &n);for(int i = 0; i < n; i++){printf("请输入第%d个整数:", i+1);scanf("%d", &num);sum += num;printf("和:%d\n", sum);return 0;}```实验四:阶乘实验题目描述:请编写一个程序,实现输入一个整数并输出其阶乘。
C语言实验五实验报告——数组
C语言实验五实验报告——数组实验五:数组实验目的:1.掌握数组的定义和使用;2.熟悉数组在函数中的传递;3.练习编写使用数组的程序。
实验原理:数组是一组相同类型的变量的集合,这些变量称为数组的元素。
数组的名字是一个指针常量,它存放的是数组首个元素的地址。
数组元素在内存中是连续存放的,可以通过下标访问每一个元素。
数组的定义:数组的定义格式为:数据类型数组名[数组长度];数组的初始化:数组可以在定义时进行初始化,也可以在定义之后通过赋值进行初始化。
数组作为函数参数:数组可以作为函数的形参进行传递,可以通过指针传递整个数组,也可以传递数组的部分元素。
实验步骤:1.编写一个程序,实现对学生成绩的管理。
要求如下:-使用一个数组保存学生的成绩;-能够动态添加学生的成绩,并显示添加成功的信息;-能够计算学生的平均成绩,并显示;-能够根据用户输入的学号查找对应学生的成绩,并显示。
2.编写一个程序,实现对一组整数进行排序。
要求如下:-首先自定义一个整数数组,数组元素个数为用户输入;-编写一个函数,实现对数组进行排序,要求使用选择排序算法;-在主函数中调用该函数,对数组进行排序后显示。
实验结果与分析:1.学生成绩管理程序运行结果如下:```-------学生成绩管理系统-------[1]添加学生成绩[2]计算平均成绩[3]查找学生成绩[4]退出系统请输入选项:1请输入成绩:90添加成功![1]添加学生成绩[2]计算平均成绩[3]查找学生成绩[4]退出系统请输入选项:1请输入成绩:85添加成功![1]添加学生成绩[2]计算平均成绩[3]查找学生成绩[4]退出系统请输入选项:2平均成绩为:87.5[1]添加学生成绩[2]计算平均成绩[3]查找学生成绩[4]退出系统请输入选项:3 [1]添加学生成绩[2]计算平均成绩[3]查找学生成绩[4]退出系统请输入选项:4退出系统。
```2.整数排序程序运行结果如下:```-------整数排序-------请输入待排序的整数个数:6请输入第1个整数:5请输入第2个整数:3请输入第3个整数:9请输入第4个整数:2请输入第5个整数:7请输入第6个整数:1排序前的整数序列为:539271排序后的整数序列为:123579 ```实验总结:通过本次实验,我深入理解了数组的原理和用法,并且掌握了数组在函数中的传递。
C语言实验五最简单的C语言程序设计
C语⾔实验五最简单的C语⾔程序设计实验5:最简单的C语⾔程序设计⼀、实验⽬的:(1)掌握C语⾔中使⽤最多的⼀种语句——赋值语句的使⽤⽅法。
(2)掌握各种类型数据的输⼊输出的⽅法,能正确使⽤各种格式转换符。
(3)进⼀步掌握编写程序和调试程序的⽅法。
⼆、实验内容和步骤:1、通过下⾯的程序掌握各种格式转换符的正确使⽤⽅法。
(1)输⼊以下程序:/* Note:Your choice is C IDE */# includeint main( ){int a,b;float d,e;char c1,c2;double f,g;long m,n;unsigned int p,q;a=61,b=62;c1='a';c2='b';d=3.56;e=-6.87;f=3157.890121;g=0.123456789;m=50000;n=-60000;p=32768;q=40000;printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n",a,b,c1,c2,d,e);printf("f=%15.6f,g=%15.12f\nm=%1d\np=%u,q=%u\n",f,g,m,n,p,q);显⽰结果:(2)运⾏此程序并分析结果。
(3)在此基础上,将程序第10~14⾏改为c1=a,c2=b;f=3157.890121;g=0.123456789;d=f;e=g;运⾏程序,分析结果。
/* Note:Your choice is C IDE */#include"stdio.h"int main(){int a,b;float d,e;char c1,c2;double f,g;long m,n;unsigned int p,q;a=61;b=62;c1=a;c2=b;f=3157.890121;g=0.123456789;d=f;e=g;p=a=m=50000;q=b=n=-60000;printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n",a,b,c1,c2,d,e);printf("f=%15.6f,g=%15.12f\nm=%1d,n=%1d\np=%u,q=%u\n",f,g,m,n,p,q);}显⽰结果:(4)⽤sizeof运算符分别检测程序中各类型的数据占多少字节。
C语言程序设计实验五:函数(5篇范例)
C语言程序设计实验五:函数(5篇范例)第一篇:C语言程序设计实验五:函数C语言程序设计实验五:函数1、定义函数返回两个数中较大的数,在主函数中通过调用该函数求三个数中较大的数并输出,编写主函数调用该函数。
说明:(1)请大家按学号来坐,便于考勤和管理。
(2)请珍惜宝贵的实验时间!不要做与实验无关的事情,比如聊QQ、上网或打游戏。
(3)直接把C语言代码粘贴到相应的实验题目下方,上交实验报告时只交word文档。
(4)文档名称:班级+学号后2位+姓名+实验编号,例如12通1班12张山实验五.doc。
第二篇:C语言程序设计实验七:函数、数组、指针C语言程序设计实验七:函数、数组、指针1、程序运行后,用户任意输入一个字符串,求出字符串长度,然后输出字符串内容及个数。
不能使用strlen函数。
求字符串长度函数的函数原型必须如下:int MyStrLenPt(char *str)若输入:nihao123!则输出:nihao123!:9 chars2、编写一个对一维数组进行排序的程序。
要求:写两个函数,一个主函数,一个sort函数。
在主函数中完成数组的输入和输出,通过调用sort函数对数组进行排序。
sort函数的原型为:voidsort(int*p, intn);说明:(1)请大家按学号来坐,便于考勤和管理。
(2)请珍惜宝贵的实验时间!不要做与实验无关的事情,比如聊QQ、上网或打游戏。
(3)直接把C语言代码粘贴到相应的实验题目下方,上交实验报告时只交word文档。
(4)文档名称:班级+学号后2位+姓名+实验编号,例如11电1班12张山实验七.doc。
第三篇:C语言程序设计—函数—实验报告实验报告专业软件工程班级X班学号_ XXXXXXXXXXX_姓名实验日期:201X年X月X日报告退发(订正、重做)课程C程序设计实验实验名称函数一、实验目的① 熟练掌握C程序中函数的定义;② 掌握函数的调用,函数参数的传递;③ 熟练掌握函数的嵌套调用和递归调用;二、实验环境(描述实验的软件、硬件环境)① 软件环境:windows xp/win7等操作系统,Microsoft Visual C++ 6.0编译器;② 硬件环境:PC机一台三、实验内容、步骤和结果分析题目一:编写一个用来判断质数(素数)的函数。
《c语言程序设计》实验报告
《c语言程序设计》实验报告《C语言程序设计》实验报告一、引言C语言是一种广泛应用于计算机编程的高级编程语言,具有灵活性和高效性的特点。
在《C语言程序设计》课程中,我们通过实验来巩固和应用所学的知识,提高我们的编程能力和解决问题的能力。
本实验报告将对我们在课程中进行的实验进行总结和分析。
二、实验一:Hello World程序实验一是我们在学习任何编程语言时的传统开始,即编写一个简单的Hello World程序。
这个程序的目的是在屏幕上显示出"Hello World"这个字符串。
通过这个实验,我们学会了如何编写基本的C语言程序,并且了解了程序的编译和运行过程。
三、实验二:计算圆的面积实验二要求我们编写一个程序,通过输入圆的半径,计算并输出圆的面积。
在这个实验中,我们学会了如何使用变量、常量和运算符来进行数学计算,并且学会了如何使用C语言的输入输出函数。
四、实验三:判断闰年实验三要求我们编写一个程序,判断输入的年份是否为闰年。
通过这个实验,我们学会了如何使用条件语句来进行逻辑判断,并且学会了如何使用布尔运算符和关系运算符。
五、实验四:字符串处理实验四要求我们编写一个程序,实现对字符串的基本操作,包括字符串的长度计算、字符串的复制和字符串的连接。
通过这个实验,我们进一步熟悉了C语言中的字符串处理函数,并且学会了如何使用循环和数组来处理字符串。
六、实验五:排序算法实验五要求我们编写一个程序,实现对一组数字的排序。
通过这个实验,我们学会了如何使用数组和循环来进行排序算法的实现,并且学会了如何评估和比较不同排序算法的效率。
七、实验六:文件操作实验六要求我们编写一个程序,实现对文件的读写操作。
通过这个实验,我们学会了如何使用C语言的文件处理函数来进行文件的打开、读取和写入,并且学会了如何处理文件指针和文件的结束标志。
八、实验七:数据结构实验七要求我们编写一个程序,实现对链表数据结构的基本操作,包括链表的插入、删除和查找等。
c语言程序设计_实验五实验报告
实验项目名称:实验五利用数组处理批量数据程序设计实验目的及要求:1.掌握一维、二维数组的定义、赋值和输入输出的方法;2.掌握字符数组的使用;3.掌握与数组有关的算法。
实验内容(方法和步骤):1.输入 10 个整数,用选择法对这 10 个整数按从小到大的顺序排序并输出排序后的结果。
程序代码:#include<stdio.h>int main(){int a[10];int i,j,t;printf("Please input ten numbers:\n");for (i=0;i<10;i++)scanf("%d",&a[i]);for (j=0;j<9;j++)for (i=0;i<9-j;i++){if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}}printf("The sequence is:\n");for (i=0;i<10;i++)printf("%d\n",a[i]);return 0;}运行结果:2.青年歌手参加歌曲大奖赛,有 10 个评委进行打分,编程求这位选手的平均得分(去掉一个最高分和一个最低分)。
程序代码:#include<stdio.h>int main(){float a[10];int i;float max,min,total=0,average;printf("Please input ten grades:\n");for (i=0;i<10;i++)scanf("%f",&a[i]);max=a[0];min=a[0];for (i=0;i<9;i++)if(a[i]<a[i+1])max=a[i+1];for (i=0;i<9;i++)if(a[i]>a[i+1])min=a[i+1];for(i=0;i<10;i++)total=total+a[i];average=(total-max-min)/8;printf("The average is:%f\n",average);return 0;}运行结果:3.从键盘输入一整数,然后在一个整型一维数组 a[20]中,用折半查找法找出该数是数组中第几个元素的值。
C语言程序设计第五次实验报告
C语⾔程序设计第五次实验报告C程序设计实验报告实验项⽬:C语⾔程序设计第五次实验报告姓名:彭佳乐实验地点:家中实验时间:2020年4⽉21⽇⼀、实验⽬的与要求1、熟练地掌握函数的定义⽅法和调⽤规则。
2、掌握再 C语⾔程序种主调函数和被条⽤函数之间进⾏数据传递的规则。
3、了解函数的返回值及其类型,并正确使⽤它4、了解局部变量和全局变量的作⽤城及它们与存储分类的关系,理解变量的存在性和可见性的概念5、练习递归函数的使⽤⼆、实验内容6.3.1.1 已知三⾓形的三边,求⾯积6.3.1.2 求N的阶乘6.3.1.3 求两个整数的最⼤公约数6.3.1.4 打印出指定的图形6.3.2.1 求500以内的所有亲密数对6.3.3.1 编写计算x的y次幂的递归函数6.3.3.2 编写计算学⽣年龄的递归函数1、实验练习:6.3.1-1 已知三⾓形的三边,求⾯积(1)问题的简单描述:编写程序,从键盘输⼈三⾓形的3条边,调⽤三⾓形⾯积函数求出其⾯积,并输出结果。
(2)实验代码:#include<math.h>#include<stdio.h>float area(float a,float b,float c){float s,p,area;s=(a+b+c)/2;p=s(s-a)(s-b)*(s-c);area=sqrt(p);return(area);}main(){float a,b,c,ts;printf("请输⼊三⾓形的三条边a,b,c:\n");scanf("%f%f%f",&a,&b,&c);ts=area(a,b,c);if(a+b>c&&a+c>b&&b+c>a)printf("area=%f\n",ts);elseprintf("Data error!");}(3)问题分析:求三⾓形的⾯积采⽤的是浮点型,具有返回值,刚开始写成了调⽤函数后来发现不对将函数调⽤改成函数表达式带⼊程序可以正常运⾏2、实验练习:6.3.1-2 求N的阶乘(1)问题的简单描述:编写函数,求出从主调函数传来的数值i的阶乘值,然后将其传回主调函数并输出(2)实验代码:#include<stdio.h>#define N 5long function(int i)static long f=1;f=f*i;return f;}main(){long product;int i;for(i=1;i<=N;i++){product=function(i);printf("%d的阶层为%d\n",i,product);}}(3)问题分析:定义N为五的时候很纠结忘了define函数,后来问了同学后解决了3、实验练习:6.3.1-3 求两个整数的最⼤公约数(1)问题的简单描述:编写程序,从键盘输⼊两个整数,调⽤gdc()函数求他们的最⼤公约数,并输出结果。
C语言实验五实验报告-数组
C语言实验五实验报告-数组C 语言实验五实验报告数组一、实验目的本次实验旨在深入理解和掌握 C 语言中数组的概念、声明、初始化以及基本操作。
通过实际编写代码,熟练运用数组解决实际问题,提高编程能力和逻辑思维能力。
二、实验环境操作系统:Windows 10开发工具:Visual Studio 2019三、实验内容1、数组的声明和初始化声明一维数组,如`int arr10;`。
初始化一维数组,包括全部初始化,如`int arr5 ={1, 2, 3, 4, 5};`,以及部分初始化,如`int arr5 ={1, 2};`。
声明二维数组,如`int arr34;`。
初始化二维数组,如`int arr23 ={{1, 2, 3},{4, 5, 6}};`。
2、数组元素的访问和操作使用下标访问数组元素,如`arr0` 。
对数组元素进行赋值和修改操作。
遍历数组,使用循环打印数组元素。
3、数组的应用实现数组元素的排序,如冒泡排序、选择排序等。
查找数组中的特定元素,如顺序查找、二分查找等。
四、实验步骤1、数组的声明和初始化打开 Visual Studio 2019,创建一个新的 C 语言项目。
在源文件中,编写以下代码来声明和初始化一维数组:```cinclude <stdioh>int main(){int arr110;int arr25 ={1, 2, 3, 4, 5};int arr35 ={1, 2};printf("未初始化的数组 arr1 的元素:\n");for (int i = 0; i < 10; i++){printf("%d ", arr1i);}printf("\n");printf("全部初始化的数组 arr2 的元素:\n");for (int i = 0; i < 5; i++){printf("%d ", arr2i);}printf("\n");printf("部分初始化的数组 arr3 的元素:\n");for (int i = 0; i < 5; i++){printf("%d ", arr3i);}printf("\n");return 0;}```编译并运行代码,观察输出结果,理解数组的声明和初始化方式。
c语言实验报告五
C语言实验报告五实验目的本实验旨在加深对C语言程序设计的理解,通过实践掌握C语言的数组、字符串、指针等基本概念和操作。
实验内容本实验包含以下几个部分:1.数组操作:编写一个程序,实现对一个整数数组的各种操作,包括初始化、输入、输出、查找最大值和最小值等功能。
2.字符串操作:编写一个程序,实现对两个字符串的比较、连接、复制等操作。
3.指针操作:编写一个程序,实现对一个整数数组的排序,使用指针进行元素的交换和比较。
实验步骤数组操作1.首先,在C程序中定义一个整数数组,并初始化数组的大小和元素值。
2.编写一个函数,用于输入数组的元素值。
3.编写一个函数,用于输出数组的元素值。
4.编写一个函数,用于查找数组中的最大值和最小值。
5.在主函数中调用上述函数,并输出数组的最大值和最小值。
字符串操作1.在C程序中定义两个字符串,并初始化字符串的内容。
2.编写一个函数,用于比较两个字符串的大小。
3.编写一个函数,用于连接两个字符串。
4.编写一个函数,用于复制一个字符串到另一个字符串。
5.在主函数中调用上述函数,并输出比较结果、连接结果和复制结果。
指针操作1.首先,在C程序中定义一个整数数组,并初始化数组的大小和元素值。
2.编写一个函数,用于通过指针进行元素的交换。
3.编写一个函数,用于通过指针进行元素的比较。
4.编写一个函数,用于对数组进行排序。
5.在主函数中调用上述函数,实现对数组的排序,并输出排序后的结果。
实验结果经过以上步骤的实验操作,可以得到如下结果:1.数组操作:成功初始化数组并输入、输出、查找最大值和最小值。
2.字符串操作:成功比较、连接和复制两个字符串。
3.指针操作:成功通过指针进行元素的交换和比较,并实现了对数组的排序。
实验总结通过本次实验,我进一步巩固了对C语言程序设计的理解,掌握了C语言中数组、字符串和指针的基本概念和操作。
实验中的步骤清晰明了,通过逐步思考和实践,我成功完成了各个功能的实现。
《C语言程序设计实验》指导书(实验1~6)
《C语言程序设计实验》指导书(简明版)**大学软件学院**年**月实验一顺序结构程序设计(2学时)一、实验目的1、熟悉C编译环境、简单C程序结构及书写方式、以及C程序的编辑、编译、连接、运行、调试的步骤;2、掌握C语言的基本数据类型及其输入输出格式,以及输入输出函数的使用方法;3、掌握C语言的算术运算符(特别是自增、自减运算符)、赋值运算符、关系运算符、逻辑运算符、条件运算符、逗号运算符的使用;4、掌握C语言顺序结构程序的执行流程、设计方法,能够根据实际问题灵活使用顺序结构,画出程序的算法流程图,设计出逻辑合理、思路清晰、结果正确的顺序结构程序。
二、实验内容及要求1、实验内容包括8道题目,分为基本内容和选做内容两部分。
要求:(1)基本内容中的实验题目是必须要完成的,选做内容中的实验题目可以根据自己的情况选做或全做(越多越好,适当加分);(2)在实验之前编写出基本内容、选做内容中的所有程序,实验前检查(视未完成情况适当扣分);(3)对于设计型题目,要求画出程序流程图(传统流程图和N-S图);(4)在上机实验过程中,注意总结和体会上机步骤(编辑、编译、连接、运行、调试、结果分析),注意培养观察、分析和排除编译错误、连接错误和程序逻辑错误的初步能力;(5)上机结束后,应按要求认真书写实验报告(格式见附件)。
2、基本内容(1)[验证型]编辑下列程序,然后进行编译、连接和运行,观察结果,并简要总结简单C程序的结构、书写格式以及上机过程;#include <stdio.h>int main( ){printf("Hello, world!\n");return 0;}(2)[验证型]通过运行下列程序,分析各种格式符的使用方法。
#include <stdio.h>int main( ){int a = 9, b = 2;float x = 32.8459, y = -792.451;char d = 'R';long n = 5461237;unsigned u = 65535;printf("%d,%d\n", a, b);printf("%3d,%3d\n", a, b);printf("%f,%f\n", x, y);printf("%-10f,%-10f\n", x, y);printf("%8.2f,%8.2\n", x, y);printf("%.4f,%.4f\n", x, y);printf("%3f,%3f\n", x, y);printf("%e,%10.2e\n", x, y);putchar(d);putchar('\n');printf("%c,%d,%o,%x\n", d, d, d, d);printf("%ld,%lo,%x\n", n, n, n);printf("%u,%o,%x,%d\n", u, u, u, u);return 0;}(3)[验证型]编辑下列程序,进行编译、连接和运行。
程序实验课实验报告
实验课程名称:C语言程序设计实验班级:计算机科学与技术1班实验时间:2023年3月15日实验地点:计算机实验室实验目的:1. 熟悉C语言编程环境,掌握C语言的基本语法和编程规范。
2. 培养学生的逻辑思维能力和编程能力。
3. 通过实际编程,加深对C语言数据结构和算法的理解。
实验内容:1. 数据类型和变量定义2. 运算符和表达式3. 控制结构(条件语句和循环语句)4. 函数的定义和使用5. 数组的使用6. 指针的使用7. 文件操作实验步骤:一、实验一:数据类型和变量定义1. 熟悉C语言的数据类型,包括整型、浮点型、字符型等。
2. 掌握变量定义的语法,学会使用不同的数据类型定义变量。
3. 编写程序,实现变量的声明、赋值和输出。
实验代码:```c#include <stdio.h>int main() {int a = 10;float b = 3.14;char c = 'A';printf("整型变量a的值为:%d\n", a);printf("浮点型变量b的值为:%f\n", b);printf("字符型变量c的值为:%c\n", c);return 0;}```二、实验二:运算符和表达式1. 掌握C语言中的运算符,包括算术运算符、关系运算符、逻辑运算符等。
2. 学会编写表达式,并理解表达式的计算规则。
3. 编写程序,实现不同运算符的使用。
实验代码:```c#include <stdio.h>int main() {int a = 5, b = 3;printf("a + b 的值为:%d\n", a + b);printf("a - b 的值为:%d\n", a - b);printf("a b 的值为:%d\n", a b);printf("a / b 的值为:%d\n", a / b);printf("a % b 的值为:%d\n", a % b);printf("!(a > b) 的值为:%d\n", !(a > b));return 0;}```三、实验三:控制结构1. 理解C语言中的条件语句(if-else)和循环语句(for、while、do-while)。
C语言程序设计基础实验报告5
printf("%d\n",num);
}
}
3、以下给定程序 MODI1.C 的功能是:输出 1~1000 之间的所有完数,并输出每个完数的所有因子。所谓完数,
就是指一个正整数,它的各因数之和等于其自身。例如,28 的因数为 1、2、4、7、14,28=1+2+4+7+14,因此,
28 是一个完数。
程序中有两处错误,错误都在提示行: /***********found***********/的下面一行。
只能选 A、B、C、D 四人中的一人。
提示:参考下面的 N-S 图
a=b=c=d=0
i=1
读入字符到 ch,根据 ch 的值不同分别进行累加
ch==’A’
ch==’B’
ch==’C’
ch==’D’
a=a+1
b=b+1
c=c+1
d=d+1
直到 i>20
输出得票数 a,b,c,d
#include<stdio.h>
printf("max is : %d", __ __m_ _);
C语言实验报告(五)
C 语言实验报告(五)一、实验目的1. 掌握使用 C 语言中数组的方法2. 掌握如何定义数组,如何引用数组元素3. 掌握二维数组的元素在内存中的存放方式4. 掌握什么是字符串,字符串结束符的作用5. 实现字符串的存储和操作,包括字符串的输入和输出6. 理解 C 语言将字符串作为一个特殊的一维字符数组二、实验内容描述:津津上初中了。
妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班。
此外每周妈妈还会送她去学习朗诵、舞蹈和钢琴。
但是津津如果一天上课超过八个小时就会不高兴,而且,上得越久就会越不高兴。
假设津津不会因为其它事不高兴,并且她的不高兴不会持续到第二天。
请你帮忙检查一下津津下周的日程安排,看看下周她会不会不高兴。
如果会的话,哪天最不高兴。
输入:输入数据有多组,第一行包含一个整数 T,表示有 T 组数据。
每组输入包括七行数据,分别表示周一到周日的日程安排。
每行包括两个小于 10 的非负整数,用空格隔开,分别表示津津在学校上课的时间和妈妈安排她上课的时间。
输出:输出包括一行,这一行只包含一个数字。
如果不会不高兴则输出 0,如果会则输出最不高兴的是周几 (用 1,2,3,4,5,6,7 分别表示周一,周二,周三,周四,周五,周六,周日)。
如果有两天或者两天以上不高兴的程度相当,则输出时间最靠前的—天。
5 36 27 25 35 40 40 63描述:某公司邀请 40 个顾客参加投票活动,选举他们最爱慕的产品,以决定公司今后的销售策略。
共有编号为 1 号~10 号的 10 个产品,每人只能选择一个产品。
编写程序,在整数数组中设置这 40 个值(投票情况),然后统计投票结果(每一个产品的得票数目)。
输入:40 个数值在 1~10 (含 1 和 10)之间的整数输出:如下所示:1 1 1 1 123 3 3 3 34 45 5 5 56 6 6 6 6 6 6 67 7 7 7 78 8 8 8 89 9 9 10 10如上图所示描述:有 n 个(n<=40)学生,现要统计这 n 个学生一次考试中不及格的人数输入:有两行,第一行为整数n;第二行为 n 个整数成绩(100(含) 以内)输出:一个整数,表示 n 个成绩中低于 60 分的个数样例输入:590 45 67 80 56样例输出:2描述:有一个长度为 n 的整数序列。
C语言上机操作指导实验五数组(1) 实验八函数(2)
第 4页,共 14页
《C 程序设计》实验及课程设计项目报告
下标= a 2
0
1 8
2 16
3 14
4 1 10
5 8
6
7 16
8 4
9 20
10 6
部分源代码: k=0; if ( a[k]<a[1] ) 真 k=1; 执行 k=0; if ( a[k]<a[2] ) 假 for ( i=1; i<10; i++ ) k=2; 不执行 if ( a[k]<a[i] ) if ( a[k]<a[3] ) 真 k=i; k=3; 执行 相关知识:①删除数组元素的概念;②移动数组元素的算法;③求最大值位置的算法。 7. 以下 sy30.c 程序的功能是:从键盘上输入若干个学生的成绩,统计计算出平均成绩,并输 出低于平均分的学生成绩,用输入负数结束输入。请填空: #include <stdio.h> void main( ) { float x[1000], sum=0.0, ave, a; int n=0, i; printf ("Enter mark : \n") ; scanf("%f", &a); while (a>=0.0 && n<1000) { sum+= ; x[n]= ; n++; scanf("%f", &a); } ave= ; printf ("Output : \n"); printf ("ave = %f\n", ave); for (i=0; i<n; i++) if ( ) printf("%f\n", x[i]); } 8.打印如下杨辉三角形 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 编程点拨: 杨辉三角形有如下特点: 1 只有下半三角形有确定的值; 2 第一列和对角线上的元素值都是 1; 3 其它元素值均是前一行同一列元素与前一行前一列元素之和。
C语言实验报告实验五参考答案
C语言实验报告实验五参考答案实验五一维数值数组(参考答案)1、设计程序sy5-1.c,计算n门课程的平均分。
例如:若有5门课程的成绩是:90.5.72.80.61.5.55,则平均分是:71.80.算法分析:先求n门课的成绩总和,(累加求和),再用累和除以课程数。
参考答案:includevoid main()double score[30]。
sum=0,aver;int n,i;printf("Inputn:");scanf("%d",&n);printf("请依次输入%d门课程的成绩",n);for(i=0;i<n;i++)scanf("%lf",&score[i]);sum=sum+score[i];aver=sum/n;printf( "\nAverage scoreis: %5.2f\n"。
aver);运行结果:2、设计步伐sy5-2.c,对输入的10个整数按倒序寄存后输出成效。
算法阐发:利用“半数交流”算法,最前面的元素和末了面的元素交流,逐步向中央挨近。
可利用两个下标变量i和XXX。
参考答案:includeint main()int a[10]={1,2,3,4,5,6,7,8,9,10};int i,j,t;for( i=0,j=9.i<j。
i++,j--)//逐一向中,交换。
直到已没有元素没交换t=a[i]。
a[i]=a[j]。
a[j]=t;}// a[i]-数组前端的数,a[j]-数组后端的数printf("交流后数组元素是:");for(i=0;i<10;i++)printf("%5d",a[i]);//%5d,5透露表现宽度printf("\n");//输出完所有的数后换行return 0;运行结果:3、设计程序sy5-3.c,输入10个整数,找出其中的最大数及其所在的下标。
《c语言程序设计》实验报告
《c语言程序设计》实验报告《C语言程序设计》实验报告一、引言C语言是一种广泛应用于软件开发领域的高级编程语言。
作为计算机科学专业的学生,学习和掌握C语言程序设计是非常重要的一项基础技能。
本实验报告将对我们在学习过程中进行的一系列实验进行总结和分析,以便更好地理解和应用C语言。
二、实验一:基本语法和数据类型在第一次实验中,我们学习了C语言的基本语法和数据类型。
通过编写简单的程序,我们掌握了变量的声明和定义、输入输出函数的使用以及基本的运算符和控制语句。
这些基础知识为我们后续实验的进行奠定了坚实的基础。
三、实验二:数组和字符串在第二次实验中,我们学习了C语言中数组和字符串的使用。
通过编写程序,我们掌握了数组的声明和初始化、数组元素的访问以及字符串的输入输出和处理。
这些知识使我们能够更好地处理和操作大量数据,提高程序的效率和可读性。
四、实验三:函数和指针第三次实验中,我们深入学习了C语言中函数和指针的使用。
通过编写程序,我们理解了函数的定义和调用、参数传递的方式以及函数的返回值。
同时,我们也学习了指针的概念和使用方法,掌握了指针的声明和初始化、指针与数组的关系以及指针的运算。
这些知识使我们能够更好地组织和管理程序的代码,提高程序的可维护性和可扩展性。
五、实验四:文件操作在第四次实验中,我们学习了C语言中文件操作的相关知识。
通过编写程序,我们掌握了文件的打开和关闭、读写文件以及文件指针的操作。
这些知识使我们能够更好地处理和管理大量的数据,实现数据的持久化和共享。
六、实验五:结构体和链表在第五次实验中,我们学习了C语言中结构体和链表的使用。
通过编写程序,我们理解了结构体的定义和使用、结构体数组的操作以及链表的创建和遍历。
这些知识使我们能够更好地组织和管理复杂的数据结构,实现更加灵活和高效的程序设计。
七、实验六:综合实验在最后一次实验中,我们将前面所学的知识进行综合运用,完成一个综合性的实验项目。
通过实践,我们巩固了前面所学的知识,并提高了解决问题的能力和思维方式。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(4) #include <stdio.h> float fac(int n) { float f; if(n<0)printf(“error!”); else if(n==0||n==1) f=1; else f=fac(n-1)*n; return(f);
} void main()
温度的华氏温度等价值,以及从 32 度 ~ 212 度之间的所有华氏温度的摄氏温度等价值。按照见 解的表格形式来显示输出结果,在保留可读性的同时使输出的行数最小。 程序清单:
#include "stdio.h" Celsius() {int f,c; for(f=1;f<=100;f++) {printf("%4d", f);
int a=1,b=2; f(a,b); printf(“%d,%d\n”,a,b); }
f(int x,int y) {
x=x+1; y=y+1; }
运行结果及分析:1,2
函数调用没有返回值
(2) #include <stdio.h> fun(int a); void main() { int a=3;
fun(a); printf("%d\n",a); } fun(int a) { a=a+3;
printf("%d,",a); }
运行结果及分析:6,3
函数调用里面输出 6 另一个输出 3,当 main 函数中输出为 printf(“%d\n”,fun(a)); 值才为 6
(3)#include <stdio.h> int fun(int x) { static int a=3; a=a+x; return a; } void main() { int k=2,m=1,n; n=fun(k); n=fun(m); printf(“%d\n”,n); }
{ int n=4; float y; y=fac(n); printf(“%d!=%f\n”,n,y);
} 运行结果及结果分析:
4!=24.000000
2. 程序填空 (1) 通过调用函数求 a+b 的和。 #include <stdio.h> float add(float x,float y); void main() {
}
填空并运行分析:return t;
3.编写程序 (1) 编写函数 floor,把值四舍五入为最近的整数。语句:y = floor( x + .5) ;将把 x 四舍 五入为最近的整数,并存如 y 。要求读取几个整数,并使用前面的语句把每个数字四舍五入为 最近的整数。对于程序中处理的每个整数,显示出原始数字和四舍五入后的数字。 程序清单:
填空并运行分析: c=add(a,b);
(2)从键盘输入任意一个数,用函数计算它的阶乘 #include <stdio.h> long int f(int a) {
long int i,t=1; for(i=1;i<=a;i++) t=t*i; return____t_____; } void main() { long int x; scanf(“%ld”,&x); printf(“%ld”,f(x));
程序编写注意事项:
摄氏温度 c ,将其转化为华氏温度 f ,转换公式为:f=c*9/5+32。
int floor(float x) {
return((int)(x+0.5)); }
程序编写注意事项:
(2) 实现下列每个整型函数。 a)函数 Celsius 返回与华氏温度等价的摄氏温度。 b)函数 Fahrenheit 返回与摄氏温度等价的华氏温度。 c)使用这两个函数编写程序,使其显示一些图表,图表中显示从 0 度 ~ 100 度之间的所有摄氏
c=9/5*(f-32); printf("%4d",c); } return(c); } Fahrenheit() { int c,f; for(c=1;c<=100;c++) {printf("%4d",c); f=c*9/5+32; printf("%4d",f); } return(f); } main() {printf("This is the degrees Celsius into Fahrenheit temperature \n"); Fahrenheit(); printf("This is the Fahrenheit temperature into degrres Celsius\n"); Celsius(); getch(); }
#include<stdio.h> int floor(float x); void main() { float a[20]; int i,N,b[20];
scanf("%d",&N);/*N is the number of x*/ for(i=0;i<N;i,&a[i]); printf(" %.2f",a[i]); b[i]=floor(a[i]); printf(" %d\n",b[i]); } getch(); }
float add(float x,float y); float a,b,c; scanf(“%f,%f”,&a,&b); c=______________; printf(“%f”,c); } float add(float x,float y) { float z; z=x+y; return z; }
实验五 函数 (验证性实验、综合性实验 (一)、实验目的 1.掌握定义函数的方法 2.学会利用函数的相关概念解决问题 3.学会使用函数的方法设计程序
2 学时)
(二)、实验内容 1.写出下列程序的运行结果 (1)#include “stdio.h”
f(int x, int y); void main() {