C++上机实验报告实验五
C语言程序设计上机实验报告
本科实习报告实习名称: C 语言程序设计实习性质:08060101实习时间:2011.09—2012.01实习地点:学生姓名:学号:学院:信息科学技术学院学系:数学系专业:信息与计算科学指导教师:教师单位:数学系2011年9月1日C语言程序设计课程实验项目目录学生姓名:学号:第 1 页暨南大学本科实验报告专用纸实验一熟悉WinTC/VC的上机过程:一、实验目的:1.熟悉Win TC或者VC++ 6.0的软件环境,掌握使用其进行编辑、编译、连接和运行的方法。
2.通过运行简单的C程序,掌握C源程序的特点。
二、实验内容:(由学生选择WinTC或者VC之一完成相关实验)1.运行WinTC程序,进入C程序设计环境。
2.建立工程文件3.编辑源文件4.编译、连接(1)单文件源程序的编译、连接源程序先经过编译,生成目标文件(.obj文件),然后将目标文件进行连接,生成可执行文件(.exe)。
如果编译、连接中发生错误,在Message窗口中显示出错信息,修改错误后,可重新编译、连接。
(2)多文件源程序的编译、连接可以用长的源程序分割成几个文件,分别编译然后生成可执行文件。
此时使用Project菜单。
步骤:第一步:有三个文件f1.c、f2.c、f3.c组成一个完整的C程序,分别建立三个文件,将f1.c、f2.c、f3.c三个文件保存到同一个文件夹中(如d:\tc\project\)。
f1.c:#include "stdio.h"extern a,b;extern max(int x,int y);main(){int e=1,f=2;printf("%d\n",max(a,b));printf("%d\n",max(e,f));}f2.c:int a=3,b=4;f3.c:int max(int x,int y ){return x>y?x:y;}第 2 页C语言程序设计第二步:构造Project文件,在编辑状态下,编辑一个扩展名为.prj的文件,文件的内容为:f1f2f3第三步:构造EXE文件,按F9键即将三个文件编译、连接成一个EXE文件,文件名为wang.exe。
C程序设计上机实验报告(完整版)
C语言程序设计上机实验报告学院:机械工程学院班级:机自161213姓名:**学号:***********实验时间:2017年3月6号任课老师:张锐C语言程序设计上机实验报告实验一一、实验名称: C程序的运行环境和运行C程序的方法二、实验目的:了解在C编译系统上如何编辑、编译、连接和运行一个C程序三、实验内容:(1). 输入并运行一个简单的C程序。
(2). 设计程序,对给定的两个数求和。
(3). 设计程序,对给定的两个数进行比较,然后输出其中较大的数。
四、源程序代码:代码1:运行结果1:程序分析1:该程序用来判断所输入的整数是否为一个素数,如果一个数能被除了1和它本身整除,还能被其它数整除,那么它就不是一个素数,因此,用for 循环来进行整除过程的简写。
代码2:运行结果2:程序分析2:简单的使用printf()和scanf()函数进行简单的数据运算。
代码3:运行结果3:程序分析3:使用if语句进行判断。
五.实验总结C语言程序设计上机实验报告实验二一、实验名称:顺序结构程序设计二、实验目的:正确使用常用运算符(算术运算符、赋值运算符)的用法,熟练掌握算术运算符及其表达式,逻辑运算符和逻辑表达式。
三、实验内容:(1). 编写程序,实现小写字母转大写。
(2). 编写程序,实现输入两个不同类型数据后,经过适当的运算(加、减、乘、除)后输出。
(3). 编写程序,计算三角形面积、立方体的体积和表面积、圆的面积和周长。
(4). 编写程序,实现单字符getchar和putchar输入输出。
(5). 编写程序,实现十进制、八进制、十六进制不同数制的输出。
四、源程序代码代码1:运行结果1:程序分析1:所有的字符都有一个对应的数字与之对应,每一个小写字母对应的数与大写字母对应的数之间总是相差32,所以只需要对所输入的字符进行减法运算就可以转换为与之对应的大写字母。
代码2:运行结果2:程序分析2:简单的数据运算和格式字符的输出。
c语言上机报告
c语言上机报告C语言上机报告(C Programming Report)一、背景介绍我们学校的C语言课程要求我们每个学期都要完成一些上机实验。
本次上机实验主要是让我们巩固和应用所学的C语言知识,加深对C语言的理解和掌握。
二、实验内容本次实验主要是编写一个简单的学生信息管理系统。
要求实现以下功能:1. 添加学生信息:输入学生的姓名、年龄、性别和学号,并将其添加到学生信息库中。
2. 删除学生信息:通过输入学生的学号,从学生信息库中删除该学生的信息。
3. 修改学生信息:通过输入学生的学号,修改该学生的姓名、年龄、性别等信息。
4. 查询学生信息:通过输入学生的学号,查询该学生的姓名、年龄、性别等信息。
5. 显示所有学生信息:将学生信息库中的所有学生信息按照一定格式进行展示。
三、实现过程1. 首先,我们定义一个结构体来存储学生的信息。
结构体包含姓名、年龄、性别和学号等成员变量。
2. 然后,我们定义一个数组来作为学生信息库,每个元素都是一个学生信息的结构体。
3. 编写函数实现不同的功能。
例如,添加学生信息的函数会从用户那里获取学生的姓名、年龄、性别和学号,并将其添加到学生信息库中。
4. 在主函数中,通过循环实现菜单的显示和用户输入的获取。
根据用户的选择,调用相应的函数来执行对应的功能。
5. 最后,编译和运行程序,测试各个功能是否正常。
四、遇到的问题及解决方法在实现过程中,我们遇到了一些问题。
例如,如何实现添加学生信息的功能,如何从用户那里获取输入等。
针对这些问题,我们通过查阅相关的资料和向老师请教,找到了解决方法。
五、实验结果经过测试,我们的学生信息管理系统能够正常运行,各个功能也能够按要求实现。
用户可以通过菜单选择不同的功能,对学生信息进行添加、删除、修改、查询和展示。
六、实验总结通过本次实验,我们巩固了C语言的知识,提高了对C语言的理解和掌握。
同时,我们锻炼了编程的能力和解决问题的能力。
通过与同学们的交流和讨论,我们也学到了其他人的思路和方法。
C语言上机实验报告
中南大学C语言程序设计实验报告学生姓名学号专业班级指导教师学院信息科学与工程学院完成时间2014年10月~2014年12月一、目的要求1、熟悉C语言的表达式语句、空语句和复合语句。
2、熟悉函数调用语句,尤其是各输入输出函数调用语句。
3、熟悉顺序结构程序中语句的执行过程。
4、能设计简单的顺序结构程序。
二、上机内容1、完成《C语言程序设计上机指导与习题选解》的实验一~实验三;2、编程并调试程序:(1)从键盘输入一个三位数,输出该数的各位数字和。
如输入:358,输出:3+5+8=16。
#include<stdio.h>main(){int a,b,c,x,m;printf("input a number:");scanf("%d",&x);if(x>999||x<100){printf("error\n");}else{a=x/100;x=x%100;b=x/10;c=x%10;m=a+b+c;printf("%d+%d+%d=%d\n",a,b,c,m);}system("pause");}(2)从键盘输入实数x,根据公式y=sin(x)+e|x|计算出y值输出。
#include<stdio.h>#include<math.h>main(){int x;printf("input x:");scanf("%d",&x);printf("%f\n",sin(x)+exp(x));system("pause");}一、目的要求1、学会运用逻辑表达式或关系表达式等表达条件。
2、熟练掌握if语句和switch语句。
3、学会使用F8跟踪调试程序,针对输入测试数据,观察程序运行的输出结果。
C语言上机实验
实验一(第1章实验)实验目的:1.掌握运行C语言程序的全过程。
2.熟悉编译环境。
3.初步熟悉C语言程序的语法规定。
4.了解简单函数的使用方法。
实验内容:1.编程且上机运行:求3个整数的和。
2.编程且上机运行:求2个数的和、差、积和商。
3.编程且上机运行:输入3个数,求最大值。
4.编程且上机运行:输入圆的半径,求圆的面积和周长。
5.在屏幕上输出:“hello world!”实验结果:实验二(第3章实验)1.实验目的:理解C语言的类型系统。
实验内容:写程序测试数据-2在类型char,int,unsigned int,long int,unsigned long int 中存储情况。
实验过程:实验结果:参见各种类型的存储实现描述。
2.实验目的:了解混合类型计算中类型的转换规则。
实验内容:写程序测试多种类型数据一起运算时类型的转换及表达式结果的类型。
注意unsigned int和int数据运算时类型转换的方向。
实验过程:/** 类型转换问题* 试问下面两个表达式等价吗?*/#include <stdio.h>#include <stdlib.h>int main() {unsigned int ui,uj;ui = 1;uj = 2;if (ui < uj)printf("\n%u < %u is true !\n", ui, uj);elseprintf("\n%u < %u is false !\n", ui, uj);if (ui - uj < 0)printf("\n%u - %u <0 is true !\n", ui, uj);elseprintf("\n%u - %u <0 is false !\n", ui, uj);system("pause");return 0;}实验结果:参见类型转换规则。
《C语言》课内实验报告5
一、实验题目:实验五函数的应用二、实验目的:1.进一步掌握函数的定义方法、调用方法,实参与形参的对应关系,以及调用函数的执行过程。
2.掌握函数的嵌套调用、递归调用、数组作为函数参数的设计方法。
3.进一步理解变量的作用域和生存期。
三、实验内容:1.定义一个求阶乘的递归调用函数double fac(int n),在主函数中调用3次该函数分别求出8!、10!、18!的准确值(结果:8!=40320,10!=3628800,18!=6402373705728000)。
编写源程序,给出注释及运行结果。
(提示,请参阅教材上174页例8.7的程序)。
#include<stdio.h> /*包含头文件*/ void main() /*空类型主函数*/ {double fac(int n); /*声明函数fac(int n)*/int a,b,c; /*定义整型变量a,b,c*/double x,y,z; /*定义double型变量x,y,z*/a=8; /*将8赋给a*/b=10; /*将10赋给b*/c=18; /*将18赋给c*/x=fac(a); /*将fac(a)赋给x*/y=fac(b); /*将fac(b)赋给y*/z=fac(c); /*将fac(c)赋给z*/printf("%d!=%.0lf\n%d!=%.0lf\n%d!=%.0lf\n",a,x,b,y,c,z);/*标准输出函数输出a,x,b,y,c,z的值*/}double fac(int n) /*定义函数fac(int n)*/{double f; /*定义double型变量f*/if(n==0||n==1) /*如果n等于0或n等于1*/ f=1; /*将1赋给f*/ else/*否则*/f=fac(n-1)*n; /*将函数值赋给f*/return(f); /*返回f的值*/}2.编写一个将n个整数用选择法按由小到大的顺序排序的函数void sort(int array[], int n),在主函数中调用两次该函数,对任给出个数分别是10和15的两组整数进行排序。
C语言程序设计上机实验报告(精选5篇)
C语言程序设计上机实验报告(精选5篇)第一篇:C语言程序设计上机实验报告黔南民族师范学院 C语言程序设计上机实验报告系部:计算机科学系年级:2013 级班级:姓名:学号:实验时间:实验成绩:2013年月日实验三顺序结构程序的设计一实验名称:顺序结构程序的设计二.实验环境:windows XP系统,VC++6.0软件三.实验目的:四.实验内容:五.算法描述流程图六.源程序七.测试数据及运行结果八.实验心得实验成绩评分要求1、原创性发现抄袭或雷同成绩为0分2、正确性程序正确60分3、可读性格式清楚,有注释,变量命名规范20分4、健壮性对特殊测试数据有考虑有测试10分5、效率程序运行效率高10分第二篇:《c语言程序设计》上机实验报告要求《c语言程序设计》上机实验报告要求1.实验环境:软件系统:使用的软件环境硬件系统:机型说明2.实验目的:掌握如何编辑、编译、链接调试运行c程序3.实验内容:(1)掌握顺序结构程序设计.P26 ,p49,p62 3.2~3.7(2)掌握选择结构程序设计(if 和switch语句的用法)p4.2~(3)循环结构程序设计(while, dowhile,for语句的用法)。
(4)掌握数组的定义、输入和输出的方法,字符数组、字符串函数的使用。
(5)了解函数的定义,熟悉函数实参与形参的“值传递”方式,掌握函数的嵌套调用和递归调用方法。
(6)熟悉指针含义及其使用。
(7)熟悉结构体和共用体的使用。
(8)熟悉文件的使用。
4.实验要求:(1)输入编写的源程序,检查程序有无错误(语法和逻辑错误),有则改之。
(2)编译和连接,仔细分析编译信息,如有错误应找出原因并改正。
(3)运行程序,输入数据,分析结果。
5.实验结果:输出程序清单和运行结果。
(要求把原题内容,调试好的程序和其结果一并打印),6.实验体会分析运行结果,本次调试程序取得的经验(遇到的问题,解决的方法等)。
第三篇:C程序设计上机实验报告10C程序设计实验报告实验名称:指针与数组学时安排:2课时实验类别:上机操作型实验要求:1人1组 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、实验目的1.理解指针、地址和数组间的关系;2.掌握通过指针操作数组元素的方法;3.掌握数组名作为参数的编程方式。
c语言上机实验报告
c语言上机实验报告C语言上机实验报告引言:C语言是一门广泛应用于计算机编程领域的高级编程语言。
通过学习C语言,我们可以了解计算机程序的基本原理和实现方法。
在本次实验中,我们将进行一系列的C语言上机实验,旨在提高我们的编程能力和解决问题的能力。
实验一:基本语法和数据类型在这个实验中,我们首先学习了C语言的基本语法和数据类型。
我们了解了变量的定义和使用,以及常用的数据类型,如整数、浮点数和字符。
通过编写简单的程序,我们掌握了C语言的基本语法和运算符的使用方法。
实验二:流程控制和循环结构在这个实验中,我们学习了C语言的流程控制和循环结构。
我们了解了条件语句(if-else语句)和循环语句(for循环和while循环)的使用方法。
通过编写程序,我们掌握了如何根据不同的条件执行不同的代码块,以及如何使用循环结构重复执行一段代码。
实验三:数组和字符串在这个实验中,我们学习了C语言中数组和字符串的使用方法。
我们了解了如何定义和初始化数组,以及如何使用下标访问数组元素。
我们还学习了字符串的定义和常用的字符串处理函数。
通过编写程序,我们掌握了如何使用数组和字符串解决实际问题。
实验四:函数和指针在这个实验中,我们学习了C语言中函数和指针的使用方法。
我们了解了如何定义和调用函数,以及如何传递参数和返回值。
我们还学习了指针的概念和使用方法,包括指针的定义、指针的运算和指针的传递。
通过编写程序,我们掌握了如何使用函数和指针提高程序的模块化和灵活性。
实验五:文件操作在这个实验中,我们学习了C语言中文件操作的使用方法。
我们了解了如何打开和关闭文件,以及如何读取和写入文件。
我们还学习了文件指针和文件位置指示器的概念和使用方法。
通过编写程序,我们掌握了如何读取和处理文件中的数据,以及如何将数据写入文件。
总结:通过这一系列的C语言上机实验,我们深入学习了C语言的基本知识和编程技巧。
我们掌握了C语言的基本语法和数据类型,了解了流程控制和循环结构的使用方法,掌握了数组和字符串的操作技巧,学会了函数和指针的使用方法,以及文件操作的基本知识。
C程序设计实验五实验报告
同组者
离开实验室时间
实验项目名称
09:50
无
11:30
实验五循环结构程序设计
实验目的:
1、熟悉掌握用while语句、do…while语句和for语句实现循环的方法;
2、掌握在程序设计中用循环的方法实现一些常用算法(如穷举、迭代、地推等);
3、进一步学习调试程序。
实验内容
编程序并上机调试运行。
printf("The quantities of circulation is %f\n",i);
return 0;
}
2输出结果如下:
不同初值对迭代次数有影响。
实验总结:
老师批语:
return 0;
}
②运行结果如下:
在得到正确结果后,请修改程序使之能分别统计大小写字母、空格、数字和其他字符的个数。
1输入程序如下:
#include<stdio.h>
int main()
{
char c;
int bigletters=0,smallletters=0,space=0,digit=0,other=0;
①输入程序如下:
#include<stdio.h>
int main()
{
int day,x1,x2;
day=9;
x2=1;
while(day>0)
{x1=(x2+1)*2;
x2=x1;
day--;
}
printf("total=%d\n",x1);
return 0;
}
②程序运行结果如下:
在得到正确结果后,修改题目,改为猴子每天吃了前一天剩下的一半后,再吃两个。
c语言上机实验报告
c语言上机实验报告《C语言上机实验报告》在计算机科学领域,C语言是一种非常重要的编程语言,它被广泛应用于系统软件开发、嵌入式系统设计以及高性能计算等领域。
为了更好地掌握C语言的基本语法和编程技巧,我们进行了一次C语言上机实验,以下是实验报告。
实验目的:1. 熟悉C语言的基本语法和数据类型;2. 掌握C语言的控制结构,如条件语句和循环语句;3. 学习C语言的函数定义和调用;4. 掌握C语言的数组和指针的使用。
实验内容:1. 编写一个简单的C程序,实现从键盘输入两个整数,然后输出它们的和、差、积和商;2. 编写一个C程序,实现计算n的阶乘;3. 编写一个C程序,实现对一个整型数组进行排序;4. 编写一个C程序,实现对一个字符串数组进行排序。
实验步骤:1. 首先,我们编写了一个简单的C程序,使用了scanf函数从键盘输入两个整数,然后使用printf函数输出它们的和、差、积和商。
通过这个实验,我们熟悉了C语言的输入输出函数的使用。
2. 接着,我们编写了一个C程序,实现了计算n的阶乘的功能。
在这个实验中,我们学会了如何定义和调用函数,以及如何使用循环语句。
3. 然后,我们编写了一个C程序,实现了对一个整型数组进行排序的功能。
在这个实验中,我们掌握了C语言的数组的使用方法,并且学会了一种简单的排序算法。
4. 最后,我们编写了一个C程序,实现了对一个字符串数组进行排序的功能。
通过这个实验,我们进一步掌握了C语言的数组和指针的使用方法。
实验总结:通过这次C语言上机实验,我们更加熟悉了C语言的基本语法和编程技巧,掌握了C语言的控制结构、函数定义和调用、数组和指针的使用方法。
这些知识和技能对我们今后的学习和工作都将非常有帮助。
希望通过不断的实践和实验,我们能够更加熟练地掌握C语言,为以后的编程工作打下坚实的基础。
C语言上机实验报告
5.理解函数的嵌套调用。
6.掌握函数的递归调用。
3.求100~200之间的素数。
要求:每行10个数输出;定义子函数isprime,函数原型为int isprime( int n); 4.设f(x)=(2x3+3x2-4x+1)/(10x2+3),q(x)=3f(x)3+2f(x)2+f(x),编程实现输入x的值,
for(k=1;k<=4;k++)
{if(i!=k&&i!=j&&k!=j){
printf("%5d",i*100+j*10+k); fre=fre+1;
}
}printf("\n"); printf("总数为:%d\n",fre);
}
青 岛 理 工 大 学
实验四 数组程序设计
1.掌握一维数组、二维数组的定义、引用及其存储方式。
else
{
x1=(-b+sqrt(d)tf("两个解:x1=%g,x2=%g\n",x1,x2);
}
}
青 岛 理 工 大 学
课程实验报告
课程名 称
计算机程序设计(C)
班级
软件111
实验日期
2012.4.28
姓名
赵亚东
学号
201107209
4.编程练习。求x2xn的部分和。直到最后一项的值小于1.0e-4。
ex=1+x+x+...+x+...
2!n!
提示:第n项un=xn/n!,第n+1项un+1= xn+1/(n+1)!
C程序设计上机实验报告5
C程序设计实验报告实验名称:嵌套循环结构程序设计学时安排:2学时实验类别:上机操作型实验要求:1人1组 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、实验目的1. 熟练掌握嵌套循环程序设计;2. 掌握C程序的调试方法。
二、实验设备介绍软件需求: Visual C++ 6.0或CFree3.5以上版本硬件需求: 对于硬件方面的要求,建议配置是Pentium III 450以上的CPU 处理器,64MB以上的内存,200MB的自由硬盘空间、CD-ROM驱动器、能支持24位真彩色的显示卡、彩色显示器、打印机。
三、实验内容1. 输入1 个正整数n,计算s 的前n 项的和(保留4 位小数)。
s = 1 + 1/2! +....+ 1/n! Enter n:10sum=1.71832. 程序填空,不要改变与输入输出有关的语句。
输入一个正整数repeat (0<repeat<10),做repeat 次下列运算:输入2 个正整数m 和n(1<=m,n<=1000),输出m 到n 之间的所有满足各位数字的立方和等于它本身的数。
输出语句:printf("%d\n", i); 例:括号内是说明Enter repeated times and m、n: 2 (repeat=2)100 400 (m=100, n=400)153 (1*1*1+5*5*5+3*3*3=153)370 (3*3*3+7*7*7=370)371 (3*3*3+7*7*7+1*1*1=371)1 100 (m=1, n=100)13. 程序填空,不要改变与输入输出有关的语句。
输入一个正整数repeat (0<repeat<10),做repeat次下列运算:输入2个正整数m和n(1<=m, n<=500),统计并输出m和n之间的素数的个数以及这些素数的和。
C语言集中上机实验报告
C语言集中上机实验报告一、实验目的本次实验的目的是通过一系列的C语言上机实验,掌握C语言的基本语法和常用操作。
二、实验内容1. 实验1:Hello World程序2.实验2:变量和数据类型3.实验3:运算符和表达式4.实验4:条件语句和循环语句5.实验5:函数的定义和使用6.实验6:数组和指针的应用三、实验过程1. 实验1:Hello World程序在本实验中,通过编写一个简单的Hello World程序,来熟悉C语言的编译和运行过程。
首先,在C语言编译器(如Dev-C++)中新建一个C 文件,然后输入以下代码:#include <stdio.h>int mainprintf("Hello World!\n");return 0;接下来,点击编译运行按钮,即可在控制台中看到输出结果"Hello World!"。
2.实验2:变量和数据类型在本实验中,我们学习了C语言的变量和数据类型的定义和使用。
通过定义不同的变量和数据类型,来存储不同类型的数据。
例如,我们可以定义一个整型变量a和一个字符型变量b,来分别存储整数和字符。
#include <stdio.h>int mainint a = 10;char b = 'A';printf("a = %d\n", a);printf("b = %c\n", b);return 0;编译运行后,控制台会输出变量a和b的值。
3.实验3:运算符和表达式在本实验中,我们学习了C语言中常用的运算符和表达式。
通过使用不同的运算符,可以对变量进行计算和操作。
例如,我们可以定义两个整型变量a和b,并使用加法运算符对它们进行相加。
#include <stdio.h>int mainint a = 10;int b = 5;int sum = a + b;printf("sum = %d\n", sum);return 0;编译运行后,控制台会输出变量sum的值。
C语言上机实验报告5
C语言上机实验报告5实验目的:1、学会运用数组,了解二维数组2、学会运用数组处理同一类的数据,运用起泡法和打擂法对数组内部的数据进行大小排序3、学会数组配合循环结构在屏幕上输出一个图案4、学运使用ASCII码值,了解ASCII值对应的具体符号,能够进行计数实验器材:电脑、C程序设计课本实验内容:1、用筛选法求出100以内的素数2、用选择法对十个整数排序3、求3*3的整形矩阵的对角线元素之和4、将一个数插入一排好的一列数中5、将一列数以逆序排列6、输出杨辉三角7、统计一篇文章中的英文大写字母、小写字母、数字、空格和其他字符的个数8、输出一个图案实验步骤及实验结果:实验结果分析及结论:实验一运用筛选法,建立数组,设置循环,输出100以内的素数;实验二运用打擂法,建立数组,逐个逐次求出大数进行排列;实验三建立一个二维数组求出对角线元素和;实验四通过逐个比较实现插入数字;实验五通过建立一个新数组作为中介实现对原来数组的重新排列;实验六输出杨辉三角;实验七通过运用ASCII值进行计数;实验八输出了该图案。
实验心得体会和建议:1、了解了数组对于同一类型数据进行使用时的优势2、学会使用一维数组,了解、初步学会使用二维数组3、学会在数组中使用起泡法和打擂法进行对数组元素的排序,通过逐项比较大小进行插入数据的操作4、学会使用ASCII值进行对字母以及其他字符的计数5、学会运用数组和循环结构搭配在屏幕上输出一个图案实验评价及结论:通过这次的C语言上机实验课程,我对数组有了更为深刻的理解,对于C语言同一类型数据有了更加合适的处理方式,学会了输出图案,排列数据大小。
实验指导老师签字:年月日。
C语言课程设计上机实习内容.(共5篇)
C语言课程设计上机实习内容.(共5篇)第一篇:C语言课程设计上机实习内容.C语言课程设计上机实习内容一、程序设计题目:简单的学生成绩管理程序设计二、程序设计功能及要求:1、原始数据输入和结果输出要求使用文件存放;2、计算每个学生三门功课的平均分,并按平均分排列名次,若平均分相同则名次并列;结果写入文件。
3、统计全班每门课程的平均分,并计算各分数段(60以下,60~69,70~79,80~89,90以上)的学生人数;结果写入文件。
4、按格式在屏幕上打印每名学生成绩条;5、在屏幕上打印出所有不及格学生的下列信息:学号,不及格的课程名,该不及格课程成绩;6、(选做)在屏幕打印优等生名单(学号,三门课程成绩,平均成绩,名次),优等生必须满足下列条件:1)平均成绩大于90分;或平均分大于85分且至少有一门功课为100分;或者平均分大于85分且至少两门课程成绩为95分以上;2)名次在前三名3)每门功课及格以上;(若完成选做题,课程设计成绩将给予加分)三、文件格式1、原始数据文件格式(具体数据自行编写)学号姓名英语C语言高等数学张三李四….….….2、输出数据文件(由程序自动生成)1)学生综合成绩文件。
(由程序自动生成)学号姓名英语 C语言高等数学平均成绩名次张三 76 89 78 80.5 5 李四….….….3 ….2)统计结果文件。
分数段英语C语言高等数学<60…60~69…70~79…80~89…>=90 …平均成绩75.5 …四、实习报告要求1、程序分析和设计2、流程图3、源程序清单4、调试过程: 测试数据及结果,出现了哪些问题,如何修改的5、程序有待改进的地方。
6、本次实习的收获和建议。
第二篇:C语言上机实习报告一、实验目的1.能够描述VC++6.0开发平台的使用过程,学会运行一个C程序的基本步骤,包括编辑、编译、链接和运行。
2.能够使用算术表达式和赋值表达式书写正确的语句。
3.能够使用输入/输出函数编写简单的程序。
C上机实验报告范文
C上机实验报告范文实验名称:C语言上机实验报告实验日期:[填写具体日期]实验目的:1.熟悉C语言的基本语法和编程环境;2.掌握C语言的输入输出函数;3.理解并运用C语言的控制结构;4.初步掌握函数的定义和调用;5.学习并运用数组和指针。
实验器材:1.计算机;2. 编程环境:如DevC++、Visual Studio等。
实验内容:本次实验共分为五个部分,每个部分实施一个具体的小任务。
任务一:编程基础1.编写程序,输出你的姓名和学号;2.使用变量保存你的生日,编写程序打印出你的年龄。
任务二:输入输出函数1.编写程序,要求用户输入一个整数,并输出该整数;2.编写程序,要求用户输入两个整数,计算并输出它们的和、差、积和商。
任务三:控制结构1. 编写程序,判断输入的一个整数是否为奇数,若是则输出"Yes",否则输出"No";2. 编写程序,输入一个年份,判断该年份是否为闰年,若是则输出"Yes",否则输出"No"。
任务四:函数的定义和调用1.编写函数,实现两个整数的交换;2.编写函数,计算输入整数的阶乘。
任务五:数组和指针1.编写程序,输入10个整数,找出其中的最大值并输出;2.编写程序,输入5个浮点数,使用指针找出其中的最小值并输出。
实验步骤:1.阅读实验内容,了解实验要求;2.打开编程环境,创建一个新的C语言项目;3.根据实验要求,依次实现每个任务;4.编写程序时,注意变量的命名和语法规范;5.编写完成后,进行编译、调试和运行;6.检查程序的输出结果是否符合实验要求;7.如有错误或问题,进行修改并再次测试;8.实验结束后,保存代码和实验报告。
实验结果:1.任务一:输出姓名和学号的程序运行正确,正确打印出姓名和学号。
2.任务二:输入输出函数的程序运行正确,正确打印出用户输入的整数以及计算结果。
3.任务三:控制结构的程序运行正确,正确判断整数的奇偶性和闰年。
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 上机实验报告
c 上机实验报告C语言上机实验报告引言:计算机科学与技术专业的学生,无论是在理论课程还是实践环节,都需要学习和掌握C语言。
C语言作为一种广泛应用于系统编程和嵌入式开发的高级编程语言,具有灵活性和高效性,因此被广泛应用于各个领域。
本篇实验报告将介绍我在上机实验中所学习到的C语言知识和技巧。
实验一:基本语法和数据类型在第一次上机实验中,我们学习了C语言的基本语法和数据类型。
通过编写简单的程序,我们了解了C语言的程序结构,包括头文件引用、全局变量定义、函数声明和主函数等。
同时,我们还学习了C语言的基本数据类型,如整型、字符型、浮点型等,并掌握了它们的使用方法和注意事项。
实验二:控制语句和循环结构在第二次上机实验中,我们深入学习了C语言的控制语句和循环结构。
通过编写多个程序,我们掌握了条件语句(if-else语句和switch语句)和循环语句(for循环、while循环和do-while循环)的使用方法。
这些控制语句和循环结构可以帮助我们实现程序的流程控制和逻辑判断,提高程序的灵活性和可读性。
实验三:数组和字符串在第三次上机实验中,我们学习了C语言中数组和字符串的使用。
通过编写程序,我们了解了数组的定义和初始化、数组元素的访问和修改、多维数组的使用等。
同时,我们还学习了字符串的定义和初始化、字符串的输入和输出、字符串的比较和拼接等。
数组和字符串是C语言中非常重要的数据结构,熟练掌握它们的使用方法对于编写复杂的程序非常有帮助。
实验四:函数和指针在第四次上机实验中,我们学习了C语言中函数和指针的使用。
通过编写程序,我们了解了函数的定义和调用、函数的参数传递和返回值、递归函数的实现等。
同时,我们还学习了指针的定义和初始化、指针的引用和解引用、指针的运算和指针与数组的关系等。
函数和指针是C语言中非常重要的概念和工具,熟练掌握它们的使用方法对于编写高效和灵活的程序至关重要。
实验五:文件操作和结构体在第五次上机实验中,我们学习了C语言中文件操作和结构体的使用。
最新C++上机实验报告实验五
最新C++上机实验报告实验五实验目的:1. 掌握C++中类和对象的基本概念和使用方法。
2. 学习如何通过继承和多态实现代码复用和扩展功能。
3. 理解模板类和模板函数的实现机制及其应用。
实验内容:1. 设计一个基类Animal,并为其添加虚函数Speak()。
2. 从Animal类派生出三个子类:Dog、Cat和Bird,每个子类实现Speak()函数。
3. 使用模板类创建一个简单的容器类,能够存储不同类型的Animal 对象。
4. 实现一个模板函数PrintInfo(),该函数能够打印任何Animal对象的信息。
实验步骤:1. 创建基类Animal,并定义一个纯虚函数Speak()。
```cppclass Animal {public:virtual void Speak() = 0;};```2. 派生Dog、Cat和Bird类,并实现Speak()函数。
```cppclass Dog : public Animal {public:void Speak() override {cout << "Woof!" << endl;}};class Cat : public Animal {public:void Speak() override {cout << "Meow!" << endl;}};class Bird : public Animal {public:void Speak() override {cout << "Tweet!" << endl;}};```3. 创建模板类AnimalContainer,并实现添加和打印容器中所有动物信息的功能。
```cpptemplate <typename T>class AnimalContainer {list<T*> animals;public:void AddAnimal(T* animal) {animals.push_back(animal);}void PrintInfo() {for (auto& animal : animals) {animal->Speak();}}};```4. 实现模板函数PrintInfo(),调用AnimalContainer的PrintInfo()方法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验五继承与派生1.实验目的1.学习定义和使用类的继承关系,定义派生类2.熟悉不同继承方式下对基类成员的访问控制3.学习利用虚基类解决二义性问题2.实验要求1.定义一个基类Animal,有私有整型成员变量age,构造其派生类dog,在其成员函数SetAge (int n)中直接给age赋值,看看会有什么问题,把age改为公有成员变量,还会有问题吗?编程尝试。
2.定义一个基类BaseClass,有整型变量Number,构造其派生类DerivedClass,观察构造函数和析构函数的执行情况。
3.定义一个车(vehicle)基类,具有Maxspeed、Weight等成员,Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类。
自行车(bicycle)类有高度(Height)等属性,汽车(motorcar)类有座位数(SeatNun)等属性。
从bicycle和motorcar派生出摩托车(motorbicycle)类,在继承过程中,注意把vehicle设置为虚基类。
如果不把vehicle 设置为虚基类,会有什么问题?编程尝试。
3.实验容及实验步骤1.编写程序定义基类Animal,成员变量age定义为私有的。
构造派生类dog,在其成员函数SetAge(int n)中直接对age赋值时,会出现类似以下的错误提示:error C2248 : ‘age’ : cannot access private member declared in class ‘Animal’error C2248 : ‘age’ : cannot access private member declared in class ‘Animal’把age改为公有成员变量后重新编译就可以了。
程序名:lab7_1.cpp。
2.编写程序定义一个基类BaseClass,构造其派生类DerivedClass,在构造函数和析构函数中用cout输出提示信息,观察构造函数和析构函数的执行情况。
程序名:lab7_2.cpp。
3.用debug功能跟踪程序lab7_2的执行过程,观察基类和派生类的构造函数和析构函数的执行情况。
4.编写程序定义一个车(vehicle)基类,由此派生出自行车(bicycle)类、汽车(motorcar)类,注意把vehicle派生为虚基类。
再从bicycle和motorcar派生出摩托车(motorcycle)类,在main()函数中测试这个类。
程序名:lab7_3.cpp。
编译成功后,把vehicle设置为非虚基类,再编译一次,此时系统报错,无法编译成功。
这是因为若不把vehicle设置为虚基类,会出现二义性错误,程序不能成功编译。
4.思考题1.如何在已有的类的基础上设计新的类?采用类的派生的方法,利用基类派生出子类,子类继承基类的属性,从而在已有基类的基础上设计新的派生类,模式如下:class 派生类名:继承方式基类名1,继承方式基类名2,…,继承方式基类名n{派生类成员声明;};2.基类和派生类对象的构造顺序是怎样的?先调用基类的构造函数,然后再调用嵌对象(派生类中的对象)的构造函数。
基类构造函数的调用顺序是按照派生类定义时的顺序,而嵌对象的构造函数调用顺序是按照成员在类中声明的顺序。
3.如何利用虚基类解决二义性问题?将共同基类设置为虚基类,语法为:class 派生类名:virtual 继承方式基类名5.源程序Lab7_1.cpp#include<iostream>using namespace std;class Animal//Animal类{/*private:int age;*/public:int age;Animal(){}~Animal(){}Animal(int );};class Dog:public Animal//Dog类,Animal的公有派生类{private:int number;public:Dog(){}~Dog(){}Dog(int,int);voidsetAge(int );voidshowNumber();voidshowAge();};Animal::Animal(int a)//Animal构造函数{age=a;}Dog::Dog(intn,int a)//Dog构造函数{number=n;age=a;}void Dog::setAge(int n)//Dog成员函数,setAge{age=n;}//数据输出函数void Dog::showNumber(){cout<<"Number:"<<number<<endl;}void Dog::showAge(){cout<<"Age:"<<age<<endl;}int main(){Dog dog1(12,0);dog1.setAge(7);dog1.showNumber();dog1.showAge();return 0;}Lab_2#include<iostream>using namespace std;classBaseClass{private:int grade;int population;public:BaseClass(intg,int p)//BaseClass的构造函数{grade=g;population=p;cout<<"constructing BaseClass"<<endl;}~BaseClass()//析构{cout<<"destructing BaseClass"<<endl;}};classDerivedClass:publicBaseClass{private:char name;public:DerivedClass(intg,intp,char n):BaseClass(g,p)//DerivedClass的构造函数{name=n;cout<<"constructing DerivedClass"<<endl;}~DerivedClass(){cout<<"destructing DerivedClass"<<endl;}};int main(){DerivedClassa(7,55,'A');return 0;}Lab_3#include<iostream>using namespace std;class Vehicle{public:floatmaxspeed;float weight;Vehicle(){}Vehicle(float m,float w){maxspeed=m;weight=w;}~Vehicle(){}void run(){cout<<"Vehicle running"<<endl;}void stop(){cout<<"Vehicle stopping"<<endl;}};classBicycle:virtual public Vehicle{public:float height;Bicycle(float m,floatw,float h):Vehicle(m,w){height=h;}Bicycle(float h){height=h;}~Bicycle(){}};classMotorcar:virtual public Vehicle{public:intseatnum;Motorcar(float m,floatw,int s):Vehicle(m,w){seatnum=s;}~Motorcar(){}Motorcar(float s){seatnum=s;}};classMotorbicycle:publicBicycle,public Motorcar{public:Motorbicycle(float m,floatw,floath,int s):Vehicle(m,w),Bicycle(h),Motorcar(s){}voidshowInformation(){cout<<"The maxspeed of this motorbicycle is:"<<maxspeed<<endl;cout<<"The weight of this motorbicycle is:"<<weight<<endl;cout<<"The height of this motorbicycle is:"<<height<<endl;cout<<"The seatnumber of this motorbicycle is:"<<seatnum<<endl;}};int main(){Motorbicyclea(60,21.5,45.8,2);a.run();a.showInformation();a.stop();return 0;}6.运行结果Lab7_1age 为Animal的私有成员数据时:编译报错age 为Animal的公有成员数据时:正常运行Lab_2Lab_37.心得体会:熟悉并了解了如果利用基类进行派生,得到派生类,明白了public,protect,private三种派生类型的区别,能够较好的利用继承的方法,来创建新的子类。
并且学习了使用虚基类继承的方式,使基类中的成员对象仅被创建一次,收获颇多。