C语言实验报告六
快速排序算法c语言实验报告
快速排序算法c语言实验报告冒泡法和选择法排序C程序实验报告实验六:冒泡法排序物理学416班赵增月F12 2011412194日期:2013年10月31日一·实验目的 1.熟练掌握程序编写步骤;2.学习使用冒泡法和选择法排序;3.熟练掌握数组的定义和输入输出方法。
二·实验器材1.电子计算机;2.VC6.0三·实验内容与流程1.流程图(1)冒泡法(2)选择法 2.输入程序如下:(1)冒泡法#includestdio.h void main() { int a[10]; int i,j,t; printf(请输入10个数字:\n); for(i=0;i10;i++)scanf(%d,&a[i]); printf(\n); for(j=0;j9;j++)for(i=0;i9-j;i++) if(a[i]a[i+1]) { t=a[i]; a[i]=a[i+1]; a[i+1]=t; } printf(排序后如下:\n); for(i=0;i10;i++) printf(%d,a[i]); printf(\n); }(2)选择法#includestdio.h void main() { int a[10]; int i,j,t,k; printf(请输入10个数字:\n); for(i=0;i10;i++)scanf(%d,&a[i]);printf(\n); for(i=0;i9;i++) {k=i;for(j=i+1;j10;j++) if (a[k]a[j])k=j;t=a[i];a[i]=a[k];a[k]=t; }printf(排序后如下:\n); for(i=0;i10;i++)printf(%d,a[i]); printf(\n); }四.输出结果(1冒泡法)请输入10个数字:135****2468排序后如下:12345678910 (2)选择法输出结果请输入10个数字:135****6810排序后如下:12345678910五.实验反思与总结1.冒泡法和选择法是一种数组排序的方法,包含两层循环,写循环时,要注意循环变量的变化范围。
c语言实验报告实验
c语言实验报告实验C 语言实验报告实验一、实验目的本次 C 语言实验的主要目的是通过实际操作和编程实践,加深对 C 语言基本语法、数据类型、控制结构、数组、指针等重要概念的理解和掌握,提高编程能力和解决实际问题的能力。
二、实验环境本次实验使用的编程环境为 Visual Studio 2019,操作系统为Windows 10。
三、实验内容1、基本数据类型和运算符的使用定义不同类型的变量,如整数型(int)、浮点型(float、double)、字符型(char)等,并进行赋值和运算操作。
熟悉各种运算符的优先级和结合性,包括算术运算符(+、、、/、%)、关系运算符(>、<、>=、<=、==、!=)、逻辑运算符(&&、||、!)、位运算符(&、|、^、~、<<、>>)等。
2、控制结构的应用使用ifelse 语句实现条件判断,根据不同的条件执行相应的代码块。
运用 switch 语句进行多分支选择,处理不同的情况。
利用 for 循环、while 循环和 dowhile 循环实现重复执行的操作,例如计算数列的和、打印特定的图案等。
3、数组和字符串的操作定义和使用一维数组、二维数组,进行数组元素的访问、赋值和遍历。
掌握字符串的存储和处理方式,使用字符数组和字符串函数(如strlen、strcpy、strcmp 等)进行字符串的操作。
4、指针的应用理解指针的概念和指针变量的定义,通过指针访问变量和数组元素。
实现指针与数组、指针与函数的结合使用,体会指针在程序中的灵活运用。
5、函数的定义和调用编写自定义函数,实现特定的功能,如计算阶乘、判断素数等。
掌握函数的参数传递方式(值传递和地址传递),理解函数的返回值。
6、结构体和共用体的使用定义结构体类型,创建结构体变量,访问结构体成员。
了解共用体的概念和使用场景,比较结构体和共用体的区别。
四、实验步骤1、实验准备打开 Visual Studio 2019 开发环境,创建一个新的 C 语言项目。
C语言实验报告第6章答案
6.2基础实验一、程序分析分析以下程序段完成的功能,填写在序号后的空白处,并运行验证结果。
1. ⊙以下程序的运行结果是:_______s=12345↙____________________。
#include <stdio.h>int main( ){ inta[]={1,2,3,4,5},i,j=1,s=0;for(i=4;i>=0;i--){ s=s+a[i]*j;j=j*10;}printf(“ s= %d \n” , s );return 0;}2. 以下程序的运行结果是:_____7 5 3______________________。
#include<stdio.h>int main( ){ int k ;int a[3][3]={9,8,7,6,5,4,3,2,1};for(k=0;k<3;k++)printf(“%d ”,a[k][2-k]);return 0;}3. 以下程序的功能是:____查找最大值元素及下标_________________。
#include <stdio.h>int main( ){ int i, j ,x =0 ,y = 0 , m ;int a[3][3] = { 1, -2 , 0 , 4 , -5 , 6 , 2 , 4 };m = a [0][0] ;for (i=0 ;i < 3 ;i++)for (j = 0 ; j<3 ; j++ )if ( a[ i] [ j ] >m ){ m = a[ i ][ j ] ;x = i ;y = j ;}printf(“ ( % d , % d ) = % d \n”, x , y,m );return 0;} 运行结果:___(1 , 2 ) = 6↙_________________4. 以下程序的的运行结果是:__8,I am student!___________________。
C语言程序实验报告--谭浩强
C语言程序设计实验报告学校:内蒙古科技大学经济与管理学院班级:信息管理与信息系统2011级姓名:王*学号:**********目录实验一C语言开发环境建立 (3)实验二C语言程序初步 (3)实验三变量与赋值 (4)实验四运算符与表达式 (5)实验五数据类型 (7)实验六控制台输入/输出 (9)实验七关系运算与逻辑运算 (11)实验八分支程序的测试与调试 (12)实验九条件型循环结构及其测试 (16)实验十计数型循环结构及其测试 (20)实验十一函数及其测试 (24)实验十二变量的储存性质 (26)实验十三数组 (30)实验十四指针 (32)实验十五结构体和共用体 (37)实验十六文件 (40)实验11、实验目的与要求(1)掌握C语言开发环境的软/硬件配置和安装方法。
(2)为了自己的方便进行工作环境配置。
(3)测试所建立的C语言程序开发环境。
2、实验测试一个简单的程序,对所建立的程序开发环境进行测试例如,可以准备一个简单的程序如下。
#include <stdio.h>int main(void){printf("I am studying programming with C.");}编译结果运行结果3.分析与预期结果相同实验21.实验目的与要求(1)进一步熟悉c语言程序设计环境。
(2)明确c语言程序的结构。
2. 程序检测与调试程序一错误程序:main()(printf("This is c program.");)调试结果:程序缺少“#include<stdio.h>”,main函数下面应该是“{}”而不是“()”。
改正后的程序:#include<stdio.h>main(){printf("This is c program.\n");}程序二错误程序:#include<stdio.h>;main(){a=3,b=5;c=a*b;printf("The product is:",c)}调试结果:“#include<stdio.h>”后面没有“;”,对变量a,b,c没有定义,“}”前缺少“;”。
c语言实验报告
c语言实验报告C语言实验报告一、引言C语言作为一种高级程序设计语言,具有简洁、高效、灵活的特点,在计算机科学领域得到广泛应用。
本实验报告旨在总结我对C语言实验的学习和理解,并介绍实验过程中遇到的问题和解决方法。
二、实验目的本次实验的主要目的是通过实践掌握C程序设计的基本语法和常用操作,培养编程思维和解决问题的能力。
具体实验要求包括熟悉C语言的数据类型、运算符、循环语句和函数定义等内容,并能够应用这些知识解决实际问题。
三、实验内容本次实验包括以下几个部分:变量的定义与使用、条件语句的应用、循环语句的运用、数组的定义与使用、函数的定义与调用以及实验总结等。
1. 变量的定义与使用在C语言中,可以使用关键字“int”、“float”、“char”等定义不同类型的变量。
变量是计算机程序中存储数据的基本单元。
在本次实验中,我通过定义不同类型的变量,并进行赋值和运算等操作,来加深对变量的理解和掌握。
2. 条件语句的应用条件语句在程序设计中起到了判断和选择不同执行路径的作用。
在C 语言中,可以使用“if”、“else if”、“else”等关键字来实现条件语句的控制。
通过实验,我学会了如何根据不同的条件执行不同的代码块。
3. 循环语句的运用循环语句是程序中重复执行某段代码的结构,能够提高程序的灵活性和效率。
在C语言中,我掌握了“for”、“while”、“do while”等不同类型的循环语句的使用方法,并在实际问题中进行了应用。
4. 数组的定义与使用数组是一种存储相同数据类型多个元素的容器。
在C语言中,可以通过定义数组名和下标位置来访问和操作数组中的元素。
通过实验,我深入了解了数组的索引范围、元素的访问以及数组在程序中的应用。
5. 函数的定义与调用函数是一段封装了特定功能的代码块,可以提高程序的模块化和可维护性。
在C语言中,我学会了如何定义函数并传递参数,以及通过函数调用来实现特定功能。
四、实验过程及结果在实验过程中,我采用了自上而下的方法,先分析问题,再逐步实现代码。
C语言实训总结报告范文(通用5篇)
C语言实训总结报告范文(通用5篇)在经济飞速发展的今天,报告的适用范围越来越广泛,报告包含标题、正文、结尾等。
一听到写报告马上头昏脑涨?以下是小编整理的C语言实训总结报告范文,仅供参考,希望能够帮助到大家。
C语言实训总结报告篇1这个星期,我们迎来了C语言实训——一次至为重要的实训。
在这个星期里,同学们都很认真的做着那20多道实训题目,遇到不懂的互相请教,或请问老师。
非常感谢老师对我们的帮助,这次实训使我受益匪浅,收获了很多。
通过C语言实训,让我加深了对C语言的了解,而不只是单单的在课本中学到的那些理论,平时乏味的课程,通过自己动手亲自编写,变的生动有趣,而在自己动手的过程中,出现的问题很多,比理论要难的多,当一个程序写完以后,经常会有很多错误而没法解决。
不过,通过几天的实训,逐渐积攒了一些经验,有些错误可以很快就看出来。
这次实训有很大的收获,让我对C语言有了更深的认识,平时在课堂上学到的东西可以自己动手编写,将其转化成一些实用的技能。
如果是一个程序写完一处错误也没有,会有种成就感,于是兴趣就来了,兴趣来了,自然学的东西也就多了,能把理论变成实际的技能,让我对C语言有了浓厚的兴趣和更深层的认识。
C语言是一个有序的学习,学了最基本的替换,然后扩展到循环,嵌套,条理很清楚,不是一个零散的知识,实际上所有的课程都如此,不过通过实训我也知道了自己的不足,存在的很多问题。
比如自己写的写的小程序出了问题,不会解决了就叫老师帮忙,虽然说一定意义上增加了师生之间的感情,但是会养成一种依赖的心理,碰到问题了第一个想到的是求助而不是自己独立解决,所以以后要多多锻炼自己的信心和增加自己的能力,争取做到老师不在身边的时候也可以完成一些简单的程序编写与错误排除。
还有自己的基础知识不扎实,遇到的问题,没有很好的逻辑思维,亲自编写一个陌生的程序的时候会有种无法下手的感觉,找不到突破口。
通过实训,逐渐理清了顺序,对于简单的程序和一些相对比较繁琐的嵌套,循环,不在是看着一头雾水。
C语言实验报告
中南民族大学管理学院学生实验报告课程名称:C程序语言设计姓名:郭晋学号:10056006年级:2010专业:信息管理与信息系统指导教师:李超锋实验地点:管理学院综合实验室2010 学年至20 11 学年度第2 学期目录实验一熟悉C语言的开发环境和C程序的上机步骤实验二基本数据类型及数据的输入输出实验三运算符及表达式实验四顺序结构程序设计实验五选择结构程序设计实验六循环结构程序设计实验七数组及其应用实验八函数及其应用实验九指针及其应用实验(一)熟悉C语言的开发环境和C程序的上机步骤实验时间:2011.3.29同组人员:郭晋,金亚男实验目的:1,了解T urb C3.0编译系统,熟悉各菜单的功能,掌握在该系统上编辑,编译,连接,运行一个C程序的方法。
2,通过调试,运行简单的C程序,初步了解C语言程序的特点。
实验内容:1.编写一个C程序,求一个圆的面积。
我们的程序设计#include<stdio.h>void main(){float r,s;scanf("%f",&r);s=3.14*r*r;printf("s=%f",s);}2.编写程序求任意三个书的最大值。
我们的程序设计#include<stdio.h>void main(){int a,b,c,max;scanf("%d,%d,%d" ,&a,&b,&c);if(a>b&&a>c)max=a;if(b>a&&b>c)max=b;if(c>a&&c>b)max=c;printf("max=%d\n",max);}实验步骤:1.首先,我们两人先根据题目中的编程要求确定实验步骤,分别写下相应的编程语言进行比较,未出现明显的分歧。
2.打开Turb C 程序,然后将刚刚确定的C语言程序输入,打开Proiles,进行系统纠错,看是否出现错误或者警告,进行相应的调试。
《C语言程序设计》实验报告实验六
《C语言程序设计》实验报告实验六使用指针的程序设计学号姓名一、实验目的1、掌握指针的概念,会定义和使用指针变量;2、能正确使用数组的指针和指向数组的指针变量;3、熟悉指针作为函数参数的定义和调用方法;4、能正确使用字符串的指针和指向字符串的指针变量。
二、实验内容1.分析下面的程序并上机运行程序,要求写出3组以上程序的运行结果。
#include <stdio.h>void main(){int *p1,*p2,*p;int a,b;printf("Input a b please");scanf("%d%d",&a,&b);p1=&a;p2=&b;if(a>b){ p=p1;p1=p2;p2=p;}printf("*p1=%d, *p2=%d\n",*p1,*p2);printf("a=%d, b=%d\n",a,b);}『运行结果:』输入1,2得:*p1=1,*p2=2a=1,b=2输入2,1得:*p1=1,*p2=2a=2,b=1输入56,123得:*p1=56,*p2=123a=56,b=1232.下列程序的功能是分别求出数组中所有奇数之和以及所有偶数之和。
形参n给了数组中数据的个数,利用指针odd返回奇数之和,利用指针even 返回偶数之和。
请在下面空白处将实现这一功能的函数完善,并且调试运行出结果。
#include <stdio.h>#define N 10void fun(int *a,int n,int *odd,int *even){int m;*odd=0; *even=0;for(m=0;m<n;m++)if(*(a+m)%2==0)*even+=*(a+m);else*odd+=*(a+m);}void main(){int a[N]={1,10,2,3,19,6},i,n=6,odd,even;printf("The original data is:\n");for(i=0;i<n;i++)printf("%5d",*(a+i));printf("\n\n");fun(a,n,&odd,&even);printf("The sum of odd numbers:%d\n",odd);printf("The sum of even number:%d\n",even);}『运行结果:』3.编程实现从键盘输入一个字符ch和一个字符串str,利用字符指针实现删除字符串str中和字符ch相等所有字符,然后输出字符串str。
实验六 一维数组实验报告
***软件类实验报告课程名称:C语言程序设计学号:姓名:班级:指导教师:开课学期:学院:***教务处⑷一维数组排序。
四、实验过程及内容:(运行结果请抓图到对应题目的下方)1. 先分析以下程序,写出运行结果,再上机检验。
2.程序填空题。
下面程序的功能是9个评委给某个参赛选手打分,去掉一个最高分和一个最低分,求该参赛选手的平均分。
填空完成程序。
实验结果:3. 程序填空题。
有数列1,1,2,4,7,13,24…,该数列的规律是从第4项起,每项是它的前三项之和。
下列程序的功能是将该数列的前30项存放在一维数组中,输出时每行输出5个数。
填空完成程序。
实验结果:4. 程序改错题。
下面程序的功能是将数组中的数按从大到小排序后输出。
改正程序中的错误。
实验结果:5. 程序改错题。
某公司从用公用电话传递数据,数据是四位的整数,在传递过程中需要加密,加密规则为每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。
改正程序中的错误。
实验结果:6. 小楚参加了一个研究生考试培训班,共30次课,由于路途较远,每次都是打车去上课,来回的车费分别存储在数组a和b中,其中-1表示未去上课。
编程计算小楚参加培训班共打车花费多少钱?(要求保留1位小数,用循环实现)输出结果的形式为:s=1234.5a数组和b数组定义如下:doublea[30]={31.0,32.0,30.3,32.8,30.5,30.6,31.0,32.8,-1,31.8,31.9,31.5,32.3,32.3,31.8,32.5 ,31.5,30.3,30.4,32.5,30.2,30.2,30.7,32.1,32.1,31.4,31.9,31.9,-1,30.5};doubleb[30]={30.2,30.2,30.3,31.6,32.7,31.5,30.4,32.4,-1,31.0,31.8,32.1,31.6,31.4,32.4,32.1 , 32.5,32.3,32.5,31.4,31.2,30.3,32.3,30.7,31.3,30.2,31.1,30.5,-1,31.9};五、实验小结。
C语言实验报告
C语言实验报告一、实验目的本次 C 语言实验的主要目的是通过实际编程操作,深入理解和掌握C 语言的基本语法、数据类型、控制结构以及函数的使用,提高编程能力和解决问题的思维能力。
二、实验环境本次实验使用的编程环境是 Visual Studio Code,操作系统为Windows 10。
三、实验内容1、数据类型与变量定义不同类型的变量,如整型、浮点型、字符型等,并进行赋值和输出操作。
观察不同数据类型在内存中的存储方式和取值范围。
2、控制结构运用ifelse 语句实现条件判断,根据不同的条件执行相应的代码块。
使用 for 循环和 while 循环完成重复操作,例如计算 1 到 100 的累加和。
3、数组与指针定义数组并进行初始化和遍历操作,实现数组元素的查找、排序等功能。
理解指针的概念,通过指针操作数组元素,体会指针带来的高效编程方式。
4、函数自定义函数实现特定功能,如计算两个数的最大值、判断一个数是否为素数等。
掌握函数的参数传递方式,包括值传递和地址传递。
四、实验步骤1、数据类型与变量打开 Visual Studio Code,创建一个新的 C 语言文件。
在文件中定义不同类型的变量,如下所示:```cinclude <stdioh>int main(){int num1 = 10;float num2 = 314;char ch ='A';printf("整数:%d\n", num1);printf("浮点数:%f\n", num2);printf("字符:%c\n", ch);return 0;}```编译并运行代码,观察输出结果,验证不同数据类型的赋值和输出是否正确。
2、控制结构实现 ifelse 语句的条件判断,例如判断一个数是否为偶数:```cinclude <stdioh>int main(){int num = 5;if (num % 2 == 0) {printf("%d 是偶数\n", num);} else {printf("%d 是奇数\n", num);}return 0;}```使用 for 循环计算 1 到 100 的累加和:```cinclude <stdioh>int main(){int sum = 0;for (int i = 1; i <= 100; i++){sum += i;}printf("1 到 100 的累加和为:%d\n", sum);return 0;}```编译并运行上述代码,查看结果是否符合预期。
c语言程序设计实验报告
c语言程序设计实验报告C语言程序设计实验报告一、引言C语言是一种广泛应用于软件开发的高级编程语言,其简洁、高效和灵活的特性使其成为许多程序员的首选。
在本次实验中,我们将通过编写C语言程序,探索其基本语法和功能,以及如何应用于实际问题的解决。
二、实验目的本次实验的目的是让我们熟悉C语言的基本语法和常用的控制结构,掌握C语言程序的编写和调试技巧。
通过实践,我们将学习如何使用C语言解决简单的问题,并培养编程思维和逻辑思维能力。
三、实验过程1. 程序设计环境的搭建在开始编写C语言程序之前,我们需要先搭建一个合适的开发环境。
通常,我们可以选择使用集成开发环境(IDE)如Code::Blocks或使用文本编辑器和命令行编译器的组合。
在本次实验中,我们选择使用Code::Blocks作为开发工具。
2. 程序的编写在本次实验中,我们将编写一个简单的学生成绩管理程序。
该程序可以实现学生信息的录入、查询和统计功能。
首先,我们需要定义适当的数据结构来存储学生的信息,如姓名、学号和成绩。
然后,我们可以使用C语言的基本输入输出函数来实现信息的录入和查询功能。
最后,我们可以使用循环和条件语句来实现成绩统计功能。
3. 程序的调试和测试在完成程序的编写后,我们需要进行调试和测试以确保程序的正确性。
我们可以通过逐行调试和输入不同的测试数据来验证程序的逻辑和功能。
如果发现错误或异常,我们可以使用调试工具来定位和修复问题。
四、实验结果与分析经过调试和测试,我们成功地完成了学生成绩管理程序的编写。
该程序可以实现学生信息的录入、查询和统计功能,并且在处理异常情况时能够给出相应的提示信息。
通过该程序,我们可以更好地理解C语言的基本语法和常用控制结构,并学会了如何将其应用于实际问题的解决。
然而,我们也发现了一些问题和改进的空间。
首先,程序的界面可以进一步优化,使其更加友好和易用。
其次,我们可以添加更多的功能,如成绩排序和成绩分析等,以满足更多的需求。
c语言实验报告分析总结3篇
c语言实验报告分析总结3篇c语言实验报告分析总结1在科技高度发展的今天,计算机在人们之中的作用越来越突出。
而c语言作为一种计算机的语言,我们学习它,有助于我们更好的了解计算机,与计算机进行交流,因此,c语言的学习对我们尤其重要。
在这个星期里,我们专业的学生在专业老师的带领下进行了c语言程序实践学习。
在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。
由于时间的关系,我们的这次实践课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。
包括了程序模块处理.简单界面程序.高级界面程序.程序的添加修改.用程序做一元线性回归处理以及用c语言程序来画粒度分布图等这几样比较重要的时间操作。
上机实验是学习程序设计语言必不可少的实践环节,特别是c语言灵活、简洁,更需要通过编程的实践来真正掌握它。
对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。
学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。
因为学时所限,课程不能安排过多的上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基础。
为此,我们结合课堂讲授的内容和进度,安排了12次上机实验。
课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面:1.加深对课堂讲授内容的'理解课堂上要讲授许多关于c语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。
然而要使用c语言这个工具解决实际问题,又必须掌握它。
通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。
C语言实验报告总结(共6篇)
c语言上机实验心得在科技高度发展的今天,计算机在人们之中的作用越来越突出。
而c语言作为一种计算机的语言,学习它将有助于我们更好的了解计算机,与计算机进行交流,因此,我们一定要学好c语言,这对我们以后的发展是十分重要的。
说到这,上机实验当然就是一个必不可少的环节了,c语言灵活、简洁的特点,只有通过编程实践才能真正了解,真正说懂。
为了更好地学习语法规定、掌握程序设计方法、提高程序开发能力,我们必须实际上机、编写程序。
通过实验我也发现了自己不少的问题,这都是只看书上的程序而没有自己亲身上机编写程序而无法得知的,假如我们只因看熟书上的程序就以为自己已经掌握了c语言那就大错特错了。
我主要存在以下的这些缺点:1、学习耐心与细心不足,如scanf(“%d”,&n);中的“&”有时候会忘了。
而在最后输出时又错写成printf(“%d”,&n);从而错误得输出了地址而不是我原来想要的答案。
2、编程思想不够发散,看着题目有时想不出解答的方法,更不用说编写程序来解题了。
3、4、基本功不够,有些函数的表达不太精通,需要看书来核实,以致耗时较多。
知识不够广,有些内容没有学好,不能要用到时及时反映出来,认识程度不够深刻。
5、6、有时候不够精简,有一点用处不大或者说没有也可以的文字存在。
英语水平较差,对错误的地方虽然电脑有说,但由于是英文,理解上还是存在一点问题。
为了能更好地学好c语言,在今后学习中我要更多的动脑,综合运用所学,多看相关东西,多上机练习,提高电脑水平,增强自学能力,把已会的东西掌握好。
实验中我深刻意识到完成程序的编写,决不意味着万事大吉。
认为万无一失的程序,实际上机运行时可能会出现很多意想不到的问题。
有时编译程序检测出一大堆错误,有时程序能够顺利运行,但是运行结果并不是你预期中想要的。
因为开发环境所提供的编译系统无法发现程序逻辑错误,或者是你原来所设计时的理论错误,这就只能靠自己的上机经验来分析判断错误的所在了。
C语言程序设计上机实验报告(精选5篇)[修改版]
第一篇:C语言程序设计上机实验报告黔南民族师范学院C语言程序设计上机实验报告系部:计算机科学系年级:2013 级班级:姓名:学号:实验时间:实验成绩:2013年月日实验三顺序结构程序的设计一实验名称:顺序结构程序的设计二.实验环境:windows XP系统,VC++6.0软件三.实验目的:四.实验内容:五.算法描述流程图六.源程序七.测试数据及运行结果八.实验心得实验成绩评分要求1、原创性发现抄袭或雷同成绩为0分2、正确性程序正确60分3、可读性格式清楚,有注释,变量命名规范20分4、健壮性对特殊测试数据有考虑有测试10分5、效率程序运行效率高10分第二篇:C程序设计上机实验报告10C程序设计实验报告实验名称:指针与数组学时安排:2课时实验类别:上机操作型实验要求:1人1组 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、实验目的1. 理解指针、地址和数组间的关系;2. 掌握通过指针操作数组元素的方法;3. 掌握数组名作为参数的编程方式。
二、实验设备介绍软件需求: Visual C++ 6.0或CFree3.5以上版本硬件需求: 对于硬件方面的要求,建议配置是Pentium III 450以上的CPU处理器,64MB以上的内存,200MB的自由硬盘空间、CD-ROM驱动器、能支持24位真彩色的显示卡、彩色显示器、打印机。
三、实验内容1. 定义函数void sort(int a[],int n)amain函数,并在其中调用sort函数。
示例如下:After sorted the array is: -9 -6 1 2 4 52. 输入10个整数存储到数组a,再输入一个整数x,在数组a中查找x,若找到则输出相应的下标,否则显示“Not found!”。
要求定义和调用函数search(int list[], int n, int x),在数组list中查找元素x,若找到则返回相应下标,否则返回-1。
C语言程序设计实验报告(实验大纲+过程)
《C程序设计》实验教学大纲一、适用范围大纲适用信息管理专业本科教学使用。
二、课程名称C程序设计三、学时数与学分总学时:90 总学分:4实验学时:28 实验学分:1四、教学目的和基本要求目的:通过C程序设计实验,培养学生对学习程序设计的兴趣,加深对讲授内容的理解,尤其是通过上机来掌握语法规则,使学生全面了解 C 语言的特点,熟练掌握 C 语言程序设计的基本方法和编程技巧。
基本要求:了解和熟悉C语言程序开发的环境;学会上机调试程序,善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行,达到实验知识和理论知识的融会贯通。
上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止,上机结束后,应整理出实验报告。
注:带*的实验项目为选做实验项目六、教材、讲义及参考书《C程序设计题解与上机指导》谭浩强主编清华大学出版社七、实验成绩评定办法实验成绩=平时实验表现+实验报告。
实验成绩占总成绩的20%。
实验成绩以等级形式给出,评定等级分优、良、中、及格、不及格五类。
1、平时考核:上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止。
在实验中,教师可根据学生编程操作能力、观察和分析及运用知识能力、程序编制正确性以及学生的课堂纪律、实验态度、保持实验室卫生等方面的表现进行综合考核。
2、实验报告:学生实验后应按时完成实验报告。
八、实验教学大纲说明本大纲共安排28学时的实验,其中带*号实验项目为选做实验项目,实际课时为18学时。
实验项目多为设计性实验项目,每个设计性实验项目中都包含数个小的设计性题目,其中带*号的题目为选做题目,有时间和有能力的同学可以选做。
九、实验项目实验一C程序的运行环境和运行一个C程序的方法一、实验目的1.了解Visual C++6.0编译系统的基本操作方法,学会独立使用该系统。
2.了解在该系统上如何编辑、编译、连接和运行一个C程序。
C语言实验六实验报告—指针
C语言实验六实验报告—指针实验六:指针实验报告一、实验目的1.了解指针的概念和作用;2.掌握指针与数组、函数的关系;3.熟悉指针的运算和指针的应用。
二、实验内容1.指针的定义和初始化;2.指针与数组的关系;3.指针与函数的关系。
三、实验原理1.指针的定义和初始化指针是一个变量,其值为另一个变量的地址。
可以使用指针来访问和修改内存中的数据。
指针的定义格式为:数据类型*指针名;可以使用&运算符来获取变量的地址,并将其赋值给指针。
2.指针与数组的关系数组是一组相同类型的数据的集合,而指针可以指向数组的首地址。
通过指针可以访问数组中的元素。
数组名本身就是一个指针常量,存储了数组的首地址。
定义指针指向数组时,可以使用数组名作为初始化值。
3.指针与函数的关系函数可以接受指针作为参数,通过指针可以修改传递给函数的变量的值。
函数也可以返回指针,指向在函数内部创建的局部变量。
需要注意的是,在使用指向局部变量的指针时要小心,因为函数执行完毕后,局部变量会被释放,指针将指向无效的内存地址。
四、实验步骤1.指针的定义和初始化定义一个整型变量a,并使用指针p指向a的地址。
使用*p来访问a 的值,使用&运算符获取a的地址并给指针p赋值。
2.指针与数组的关系定义一个整型数组arr,并使用指针p指向数组的首地址。
使用p[i]来访问数组的元素,使用*(p+i)也可以实现相同的效果。
3.指针与函数的关系定义一个函数,接受一个指针作为参数,并使用指针修改传递给函数的变量的值。
定义一个函数,返回一个指针,指向在函数内部创建的局部变量。
在主函数中调用这两个函数,并打印出相应的结果。
五、实验结果1.指针的定义和初始化定义一个整型变量a,并初始化为10。
指针p指向a的地址,使用*p 来访问a的值。
2.指针与数组的关系定义一个整型数组arr,并初始化为{1, 2, 3, 4, 5}。
指针p指向数组的首地址,使用p[i]来访问数组的元素。
C语言实验报告(全)
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
实验报告填写说明
1.实验报告中的班级写行政班级(如道土1班),学号写完整学号(如20176000101),实
验日期不要漏写,任课教师写全名。
2.设计流程(算法描述)的书写用传统流程图、N-S流程图或伪代码中的任一种方式写出算法。
3.调试和测试结果应有内容,至少是“调试结果正确”,如果遇到错误,则写出错误信息,
及调试解决方法。
要求写出测试用的数据和测试结果,应对所有路径都进行测试。
c语言实验报告总结(范本)
c语言实验报告总结c语言实验报告总结篇一:C语言上机实验心得C语言上机实验心得在科技高度发展的今天,计算机在人们之中的作用越来越突出。
而C语言作为一种计算机的语言,学习它将有助于我们更好的了解计算机,与计算机进行交流,因此,我们一定要学好C语言,这对我们以后的发展是十分重要的。
说到这,上机实验当然就是一个必不可少的环节了,C语言灵活、简洁的特点,只有通过编程实践才能真正了解,真正说懂。
为了更好地学习语法规定、掌握程序设计方法、提高程序开发能力,我们必须实际上机、编写程序。
通过实验我也发现了自己不少的问题,这都是只看书上的程序而没有自己亲身上机编写程序而无法得知的,假如我们只因看熟书上的程序就以为自己已经掌握了C语言那就大错特错了。
我主要存在以下的这些缺点:1、学习耐心与细心不足,如scanf(“%d”, n);中的“”有时候会忘了。
而在最后输出时又错写成printf(“%d”, 从而错误得输出了地址而不是我原来想要的答案。
2、编程思想不够发散,看着题目有时想不出解答的方法,更不用说编写程序来解题了。
3、4、基本功不够,有些函数的表达不太精通,需要看书来核实,以致耗时较多。
知识不够广,有些内容没有学好,不能要用到时及时反映出来,认识程度不够深刻。
5、6、有时候不够精简,有一点用处不大或者说没有也可以的文字存在。
英语水平较差,对错误的地方虽然电脑有说,但由于是英文,理解上还是存在一点问题。
为了能更好地学好C语言,在今后学习中我要更多的动脑,综合运用所学,多看相关东西,多上机练习,提高电脑水平,增强自学能力,把已会的东西掌握好。
实验中我深刻意识到完成程序的编写,决不意味着万事大吉。
认为万无一失的程序,实际上机运行时可能会出现很多意想不到的问题。
有时编译程序检测出一大堆错误,有时程序能够顺利运行,但是运行结果并不是你预期中想要的。
c语言实验报告
c语言实验报告一、引言C语言是一种广泛应用于计算机科学和软件开发领域的编程语言。
它的简洁性、高效性以及跨平台的特性使其成为许多开发人员的首选。
本篇实验报告将介绍我在学习C语言过程中进行的几个实验项目,并详细记录每个实验的步骤、结果以及对C语言的理解。
二、实验一:Hello World!在学习任何一门编程语言时,第一个示例程序往往是输出"Hello World!"。
这个简单的程序虽然看似微不足道,却能够帮助初学者了解基本的编译和运行过程。
在实验中,我使用了C语言的基本语法,编写了一个简单的Hello World程序,并成功地将其编译并运行。
这个小小的成就让我对C语言有了初步的认识和信心。
三、实验二:计算器程序为了更深入地理解C语言的数据类型和运算符,我决定编写一个简单的计算器程序。
这个程序可以实现基础的四则运算和一些简单的数学函数,如平方根和求幂等。
通过这个实验,我学会了如何使用变量、条件语句和循环结构来实现计算功能,并通过不断调试和修改,使程序更加健壮和高效。
四、实验三:数组与排序数组是C语言中非常重要的概念,在实验三中,我探索了数组的用法和特性,并将其应用于一个排序算法中。
我选择了冒泡排序作为实验的排序算法,通过比较相邻元素的大小并不断交换位置,最终将数组中的元素按照升序排列。
这个实验使我更加熟悉了数组的操作,也加深了我对算法思想和效率的理解。
五、实验四:文件操作在现实世界中,大部分的应用程序需要与文件进行交互。
为了学习如何使用C语言进行文件操作,我进行了实验四。
在这个实验中,我编写了一个小程序,能够读取一个文本文件的内容,统计其中不同字符的数量,并将结果输出到另一个文件。
通过这个实验,我了解了如何打开、关闭和读写文件,也学习了异常处理以及文件操作的一些注意事项。
六、实验五:数据结构和指针C语言提供了指针的机制,允许直接访问和操纵内存中的数据。
为了更深入地理解指针和数据结构之间的关系,我进行了实验五。
C语言实验报告
C语⾔实验报告上机要求:禁⽌玩游戏、看视频及从事与课程⽆关的活动。
实验内容按照指导书内容填写,可以把⾃⼰上机编写的程序、遇到的问题、解决办法写上(得到⾼分的条件)。
在有输⼊输出的程序部分,应该写上输⼊输出的结果,以表⽰程序能正确⼯作。
实验⼀编程环境的使⽤⼀、⽬的和要求1.了解编程环境的使⽤。
2.学会处理简单的错误,观察运⾏结果。
3.掌握基本的输⼊输出。
⼆、实验原理VisualC++6.0是⼀个集成的开发环境,包括编辑、编译连接和调试。
编写程序的主要过程是:建⽴⼯作区、建⽴⼯程、添加源⽂件、输⼊程序、运⾏程序、改正出现的错误直到有正确的输出结果。
三、实验内容及步骤1.编程环境的使⽤。
(1)打开VisualC++6.0开发环境。
(2)单击“⽂件-〉新建”菜单命令,显⽰出“新建”对话框(如图1-3)。
在新建对话框单击“⼯程”标签,选中Win32 Console Application项,然后在⼯程框中键⼊控制台应⽤程序项⽬名称,并且选中空⼯程。
(3)添加C++源⽂件,输⼊⽂件名。
(4)打开编辑窗⼝,输⼊程序,保存。
(5)编译运⾏程序,找到其错误位置,改正错误。
2.编写如下程序,从键盘读⼊两个整数,计算它们的和差积商,将结果输出在屏幕上。
3.编写如下程序,从键盘读⼊两个字符,并输出在屏幕上。
四、思考问题1.如何使⽤不同的数据类型。
2.如何处理输⼊输出。
3.如何查找程序中的错误?实验⼆选择结构⼀、⽬的和要求1. 掌握if ...else 及其嵌套的⽤法。
2. 掌握switch 的⽤法。
⼆、实验原理if 语句是专门⽤来实现选择结构的语句,是根据⼀个条件满⾜与否来决定是否执⾏某条语句或从两个语句中选择⼀个语句执⾏。
if-else 语句的⼀般格式为:if (表达式1) 语句1else if (表达式2)语句2……else if (表达式n )语句nelse 语句n+1当程序中有多个条件判断时,若使⽤if 语句可能使嵌套太多,降低了程序的可读性,switch 语句能很好的解决这个问题。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数学与软件科学学院实验报告学期:2013至_2014 第_ 1 学期时间:2013年12月07日课程名称:程序设计基础教程-C语言专业:数学与应用数学 2012级1班实验编号:06实验项目:基于函数的模块化程序设计指导教师_姓名:学号:实验成绩:良+一、实验目的及要求(1)了解和掌握C语言环境下模块化程序设计的基础----基于函数模块的程序设计技术;(2) 复习C语言程序的基本结构特点,了解基于函数模块的程序模块及其调用关系、过程;(3) 函数的声明、定义、使用方法;(4) 对各种变量属性的使用方法;(5) 对C语言中常用的预编译语句的基本掌握。
二、实验内容(第1题任选其两个小题,第2题和第3题必做)1.函数的声明、定义和使用方法。
具体实例如下:(1) 编写一个在屏幕上画一条正弦曲线的函数;(2) 编写一个函数,它可以求出给定数的所有因子,如下形式显示其结果:72=2*2*2*3*3;(3) 分别写出一个求N个数的最大公约数和最小公倍数的递归函数;(4) 试编制n碟片hanoi塔的问题求解函数,并利用它求解4个盘片的结果;(5) 试编写求n!的函数,并求n=7的结果。
具体要求如下:(1) 编写程序通过调试获得正确结果;(2) 分析函数的声明、定义和使用方法;(3) 分别分析函数调用时的参数传值调用方法。
2.有关变量的属性实验(静态、动态、全局、局部等方面)。
具体实例如下:(1) 仔细分析以下程序的执行结果,然后上机运行如下程序段,并对各个变量的属性及其使用结果进行比较分析:int main(void){ /******(a)******/int nX=1;{/******(b)******/void prt(void);int nX=3;prt();printf("The second nX is %d\n",nX);}/******(c)******/printf("The first nX is %d\n",nX);return 0;}void prt(void){ /******(d)******/int nX=5;printf("The third nX is %d\n",nX);}/******(e)******/(2) 仔细分析下列程序,是否有错误之处?然后分析其执行结果,上机验证并对各个变量的存储属性及其结果进行比较分析:#define LOW 11#define HIGH 23#define CHANGE 12int i=LOW;int main(void){int workover(int i);int reset(int i);int i=HIGH;reset(i/2.5);printf("i=%d\n",i);reset(i=i/3);printf("i=%d\n",i);reset(i/2);printf("i=%d\n",i);workover(i);printf("i=%d\n",i);return 0;}workover(int i);{i=(i%i++)*((i*i)/(2*i)+4);printf("i=%d\n",i);return (i);}reset(int i);{i=i<=CHANGE?LOW:HIGH++;return (i);}(3) 分析、编辑并执行以下程序,如果有错,请指出其错误原因,同时需要指出各个变量的存储属性。
/*****file1.c*****/int last(void);int new(int);int reset(void);exter int i;int main(void){int i,j;i=reset();for (j=1;j<=3;j++){printf(“i=%d\tj=%d\n”,i,j);printf(“next(i)=%d\t”,next(i));printf(“last(i)=%d\n”,last());printf(“new(i+j)=%d\n”,new(i+j));}int next(void){return (i++);}return 0;}/*****file2.c*****/static int i=10;fast(void){rturn (i-=1_);}new(int i){static int j=-5;return (i=j+=++i);}/*****file3.c*****/extern int i;reset(){return (i);}3.预编译命令实验。
具体实例如下:(1)一般宏替换实验(教材例7-5);(2) 带参数的宏替换(教材例7-7~例7-12,习题7-8和习题7-9);(3) 习题7-11和习题7-12;(4) 文件包含(#include ""和#include <>)。
三、实验预备(1) 编写所选实验题目的程序代码和流程图;(2) 检查源程序并给出其可能的运行结果说明。
四、实验步骤(1) 上机验证所选题目,并做相应测试和分析;(2) 进行实验分析;(3) 总结基于函数、宏等技术的模块化程序设计和实现方法及其经验;(4) 编写实验报告。
五、实验结果分析与评价(1) 根据测试目标写出测试报告;(2) 测试结果分析说明;(3) 测试程序代码清单。
1.函数的声明、定义和使用方法。
具体实例如下:(1)分别写出一个求N个数的最大公约数和最小公倍数的递归函数;程序如下:int main(void){int a,b,p,r,nTemp;clrscr();printf("Please input (a,b)::\n");scanf("%d,%d",&a,&b);if (a<b) /* 交换a,b的位置,使得a>b */{nTemp=a;a=b;b=nTemp;}p=a*b; /*将a*b的值放到p里面,以便接下来求a,b的最小公倍数*/ while (b!=0) /*采用辗转相除法求最大公约数*/{r=a%b;a=b;b=r;}printf("the zui da gong yue shu is %d\n",a); /*输出最大公约数*/ printf("the zui xiao gong bei shu is %d\n",p/a); /*输出最小公倍数*/ return 0;}运行结果:(2) 试编写求n!的函数,并求n=7的结果。
程序如下:int main(main){long int n,i,nSum=0,nX=1; /*声明变量*/clrscr();printf("Please input (n)::\n");scanf("%d",&n);for (i=1;i<=n;i++) nX*=i; /* process 循环控制结构*/ printf("n! is %d",nX);return 0;}运行结果如下:2.有关变量的属性实验(静态、动态、全局、局部等方面)。
具体实例如下:(1) 仔细分析以下程序的执行结果,然后上机运行如下程序段,并对各个变量的属性及其使用结果进行比较分析:程序如下:int main(void){int nX=1; /*全局变量,但是当遇到内部重新初始化时,以内部的为准*/ {void prt(void); /*调入外部函数*/int nX=3; /*再一次初始化*/prt();printf("The second nX is %d\n",nX);}printf("The first nX is %d\n",nX);return 0;}void prt(void){int nX=5; /*重新初始化*/printf("The third nX is %d\n",nX);}运行结果如下:(2) 仔细分析下列程序,是否有错误之处?然后分析其执行结果,上机验证并对各个变量的存储属性及其结果进行比较分析:#define LOW 11 /*采用宏定义,方便程序运行*/#define HIGH 23#define CHANGE 12int i=LOW; /*外部变量*/int main(void){int workover(int i);int reset(int i);int i=HIGH;reset(i/2.5);printf("i=%d\n",i);reset(i=i/3);printf("i=%d\n",i);reset(i/2);printf("i=%d\n",i);workover(i);printf("i=%d\n",i);return 0;}workover(int i);{i=(i%i++)*((i*i)/(2*i)+4);printf("i=%d\n",i);return (i);}reset(int i);{i=i<=CHANGE?LOW:HIGH++;return (i);}该程序有误,更改为:#include <stdio.h>#define LOW 11#define HIGH 23#define CHANGE 12int i=LOW;int main(void){int i=HIGH;int reset(int i);clrscr();reset(i/2.5);printf("i=%d\n",i);reset(i=i/3);printf("i=%d\n",i);reset(i/2);printf("i=%d\n",i);workover(i);printf("i=%d\n",i);return 0;}int workover(int i){i=(i%i++)*((i*i)/(2*i)+4);printf("i=%d\n",i);return (i);}reset(int i){i=i<=CHANGE?LOW:HIGH;return (i);}运行结果如下:(3) 分析、编辑并执行以下程序,如果有错,请指出其错误原因,同时需要指出各个变量的存储属性。