文档库 最新最全的文档下载
当前位置:文档库 › C语言程序设计实验报告(实验大纲+过程)

C语言程序设计实验报告(实验大纲+过程)

C语言程序设计实验报告(实验大纲+过程)
C语言程序设计实验报告(实验大纲+过程)

《C程序设计》实验教学大纲

一、适用范围

大纲适用信息管理专业本科教学使用。

二、课程名称

C程序设计

三、学时数与学分

总学时:90 总学分:4

实验学时:28 实验学分:1

四、教学目的和基本要求

目的:通过C程序设计实验,培养学生对学习程序设计的兴趣,加深对讲授内容的理解,尤其是通过上机来掌握语法规则,使学生全面了解 C 语言的特点,熟练掌握 C 语言程序设计的基本方法和编程技巧。

基本要求:了解和熟悉C语言程序开发的环境;学会上机调试程序,善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行,达到实验知识和理论知识的融会贯通。上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止,上机结束后,应整理出实验报告。

五、实验项目与学时分配

序号实验项目名称实验

学时

实验类型

1 C程序的运行环境和运行一个C程序的方法

2 验证性实验

2 数据类型、运算符和表达式

3 验证性实验

3 最简单的C程序设计 3 验证性实验

4 选择结构程序设计 4 设计性实验

5 循环控制 4 设计性实验

6 数组 4 设计性实验

7 函数 4 设计性实验

8 指针 4 设计性实验

总计28

注:带*的实验项目为选做实验项目

六、教材、讲义及参考书

《C程序设计题解与上机指导》谭浩强主编清华大学出版社

七、实验成绩评定办法

实验成绩=平时实验表现+实验报告。实验成绩占总成绩的20%。

实验成绩以等级形式给出,评定等级分优、良、中、及格、不及格五类。

1、平时考核:上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止。在实验中,教师可根据学生编程操作能力、观察和分析及运用知识能力、程序编制正确性以及学生的课堂纪律、实验态度、保持实验室卫生等方面的表现进行综合考核。

2、实验报告:学生实验后应按时完成实验报告。

八、实验教学大纲说明

本大纲共安排28学时的实验,其中带*号实验项目为选做实验项目,实际课时为18学时。实验项目多为设计性实验项目,每个设计性实验项目中都包含数个小的设计性题目,其中带*号的题目为选做题目,有时间和有能力的同学可以选做。

九、实验项目

实验一C程序的运行环境和运行一个C程序的方法

一、实验目的

1.了解Visual C++6.0编译系统的基本操作方法,学会独立使用该系统。

2.了解在该系统上如何编辑、编译、连接和运行一个C程序。

3.通过运行简单的C程序,初步了解C源程序的特点。

二、实验内容

1.用编辑程序,输入教材第一章例1.1程序,并进行编译和运行。应了解所用的系统是用什么命令进行编译和连接运行的。编译和连接后所得到的目标程序的后缀是什么形式的?

2.编写一个C程序,输出以下信息:

****************************

very good!

****************************

3.输入并运行教材第一章中例1.3,了解如何在运行时向程序变量输入数据。

实验二数据类型、运算符和表达式

一、实验目的

1.掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用格式转换符。

2.学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。

二、实验内容

1.输入并运行以下程序:

main( )

{ char c1,c2;

c1=97;c2=98;

pr intf(“%c %c\n”,c1,c2);

printf(“%d %d\n”,c1,c2);

}

在此基础上

①将第三行、第四行改为:

c1=321;c2=353;

再使之运行,分析其运行结果。

②将第二行改为:

int c1,c2;

再使之运行,分析其运行结果。。

2.输入并运行以下程序:

main( )

{int i=8,j=10,m,n;

m=++i;n=j++;

printf(“%d,%d,%d,%d\n”,i,j,m,n);

}

分别作以下改动并运行:

①程序改为:

main( )

{int i=8,j=10;

printf(“%d,%d\n”,i++,j++);

}

②在②的基础上,将printf语句改为:

printf(“%d,%d\n”,++i,++j);

③再将printf语句改为:

printf(“%d,%d,%d,%d\n”,i,j, i++,j++);

④程序改为:

main( )

{int i=8,j=10,m=0,n=0;;

m+=i++;n-=--j;

printf(“i=%d,j=%d,m=%d,n=%d\n”,i,j,m,n);

}

3. 请将下列给出的两个程序段分别输入计算机后,分析其运行结果:

①main()

{ int num;

num=32767;

printf(“num=%d\n”,++num);

}

②main()

{ int a=-2;

printf(“%d, %d\n”,a, a--);

}

实验三最简单的C程序设计

一、实验目的

1.掌握C语言中使用最多的一种语句——赋值语句的使用。

2.掌握数据的输入输出的方法,能正确使用各种格式转换符。

二、实验内容

1.上机输入以下程序:

main( )

{int a,b;float c;

scanf(“%d%d%f”,&a,&b,&c);

printf(“a=%-4d,b=%4d,c=%f,c=%.2f\n”,a,b,c,c);

}

要使a=3,b=4,c=12.3456,在键盘上应如何输入?有几种方式?

2.若将输入函数改为scanf(“%d, %d ,%f”,&a,&b,&c);应该如何输入数据?

3.上机输入以下程序: main( )

{int a; float b; char c;

scanf(“%4d%5f%3c ”,&a,&b,&c);

printf(“a=%d,a=%o,a=%x,b=%8.3f,b=%4.0f,c=%c\n ”,a,a,a,b,b,c); }

要使a=77,b=4.56,c= ‘A ’,在键盘上应如何输入?

4.输入两面整型变量a 、b 的值,输出下列算式以及运算结果。 a+b 、a-b 、a*b 、a/b 、(float)a/b 、a%b

每个算式占一行。如a 等于10,b 等于6,a+b 应输入为: 10+6=16

5.编写程序,用getchar 函数读入两个字符c1、c2,然后分别用putchar 函数和printf 函数输出这两个字符。上机运行程序,比较用printf 和putchar 函数输出字符的特点。

实验四 选择结构程序设计 一、实验目的

1.了解C 语言表示逻辑量的方法(以0代表“假”,以1代表“真”);

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

3.熟练掌握if 语句和switch 语句。

二、实验内容

先编程序,解以下问题,然后上机调试运行程序。 1.有一个函数

??

?

??≥-<≤-<=10113101121x x x x x x

y

用scanf 函数输入x 的值(分别为x<1、1~10、≥10三种情况),求y 值。 2.给出一个百分制成绩,要求输出成绩等级‘A ’,‘B ’,‘C ’,‘D ’,‘E ’。90分以上为‘A ’,80~89分为‘B ’,70~79分为‘C ’,60~69分为‘D ’,60分以下为‘E ’。

要求分别用if 语句和switch 语句实现 3.输入一个三位数,若此数是水仙花数输出“Y”,否则输出“N”, 若输入值不是三位数输出“data error”。 提示:水仙花数是一个三位数,组成这个三位数的三个数字的立方和与这个三位数相等。如:

153=13+53+33

。判断是否是水仙花数需把构成三位数的三个数字分离出来并存入变量。

实验五 循环控制 一、实验目的

1.熟悉用while 语句,do-while 语句和for 语句实现循环的方法。

2.掌握在程序设计中用循环的方法实现各种算法(如穷举、迭代、递推等)。

二、实验内容

编程序并上机调试运行。

1.输入两个正整数,求其中最大公约数和最小公倍数。

2.输入一行字符,分别统计出其中的英文字母、空格、数字和其它字符的个数。

3.打印出以下图案:

*

***

*****

*******

*****

***

*

4.编程求1!+2!+3!+……+20!。

5.编写程序输出乘法表

实验六数组

一、实验目的

1.掌握一维数组和二维数组的定义、赋值和输入输出的方法;

2.掌握字符数组和字符串函数的使用。

3.掌握与数组有关的算法(特别是排序算法)。

二、实验内容

编程序并上机调试运行。

1. 编写程序,用scanf函数输入10个整数的数列,先将整数按照从大到小的顺序进行排序,然后输入一个整数插入到数列中,使数列保持从大到小的顺序。

2.有15个数存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值,如果该数不在数组中,则输出“无此数”,并且可以实现连续查找。15个数用赋初值的方法在程序中给出,要找的数用scanf函数输入。

3.将以下二维数组中数按列的顺序存放到一个一维数组中。二维数组的内容是

11 22 33 44

11 22 33 44

11 22 33 44

则一维数组中的内容是11 11 11 22 22 22 33 33 33 44 44 44

4.将两个字符串连接起来,不要用strcat函数。

5.从键盘输入5个字符串,找出最长的字符串和最大的字符串。

实验七函数

一、实验目的

1.掌握定义函数的方法;

2.掌握函数实参与形参的对应关系,以及“值传递”的方式;

3.掌握函数的嵌套调用和递归调用的方法;

4.掌握全局变量和局部变量,动态变量和静态变量的概念和使用方法。

二、实验内容

编程序并上机调试运行之。

1.写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的信息。

2.两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果。两个整数在主函数中输入,并传送给函数1,求出的最大公约数返回主函数,然后再与两个整数一起作为实参传递给函数2,以求出最小公倍数,返回到主函数输出最大

公约数和最小公倍数。

3.已知二阶Fibonacci数列:

0 若n=0

Fib(n)= 1 若n=1

Fib(n-1)+Fib(n-2) 其他情况

定义递归函数求Fib(n)。

!n

4. 编写函数,求 10

1

实验八指针

一、实验目的

1.掌握指针的概念,会定义和使用指针变量;

2.学会使用数组的指针和指向数组的指针变量;

3.学会使用字符串的指针和指向字符串的指针变量;

4.学会使用指向函数的指针变量;

5.了解指向指针的指针的概念及其使用方法。

二、实验内容

编程序并上机调试运行程序(都要求用指针处理)。

1.定义函数void fun(int x[ ],int *max,int *min),找出数组x中的最大值和最小值,最大值和最小值通过形参指针max和min传回。

2.编写一个函数comp(s1,s2)实现两个字符串的比较。

如果s1=s2,则函数返回值为0;如果s1≠s2,返回它们二者第一个不同字符的ASCII 码差值(如“BOY”与“BAD”,第二个字母不同,“O”与“A”之差为79-65=14);如果s1>s2,则输出正值;如s1

两个字符串s1,s2由main函数输入,strcmp函数的返回值也在main函数输出。

3.从键盘输入一个字符串与一个指定字符,调用函数,将字符串中出现的指定字符全部删除。

4.将一个3×3的矩阵转置,用一函数实现。

在一主函数中用scanf函数输入以下矩阵元素:

135

7911

131517

将数组名作为函数参数,在执行函数的过程中实现矩阵转置,函数调用结束后在主函数中输出转置后的矩阵。

实验九结构体和共用体

一、实验目的

1.掌握结构体类型变量的定义和使用;

2.掌握结构体类型数组的概念和应用;

3.掌握链表的概念,初步学会对链表进行操作;

4.掌握共用体的概念与使用。

二、实验内容

编程序,然后上机调试运行。

1.有3个学生,每个学生的数据包括学号、三门课的成绩,要求用input函数实现从键盘输入学生数据,用average函数求每个人的平均分,用output函数打印学生数据及平均成绩。

2.建立一个带有头结点的单链表,每个结点包括:学号、年龄,并输出链表中所有结点的数据。在链表中查找年龄最大的结点,并将链表中等于此年龄的结点删除(年龄最大的结点可能不止一个)。

*3.将一个链表按逆序排列,即将链头当链尾,链尾当链头。

4.上机输入如下程序:

main( )

{union bt

{int k; char c[2];}a;

a.k= -7;

printf(“%o,%o\n”,a.c[0],a.c[1]);

}

分析其运行结果。

实验十位运算

一、实验目的

1.掌握按位运算的概念和方法,学会使用位运算符;

2.学会通过位运算实现对某些位的操作。

二、实验内容

编写程序,上机调试并运行。

1.编一个函数getbits,从一个16位的单元中取出某几位(即该几位保留原值,其余位为0)。函数调用形式为:getbits(value,n1,n2)

value为该16位数的值,n1为欲取出的起始位,n2为欲取出的的结束位。如:getbits(0101675,5,8)表示对八进制数101675,取出其从左面起的第5位到第8位。

要求把这几位数用八进制数打印出来。注意,应当将这几位数右移到最右端,然后用八进制形式输出。

2.利用位运算操作,实现交换两个变量的值。

3.将一个十六进制整数的各位循环左移4位,然后用十六进制形式输出。

实验十一文件

一、实验目的

1.掌握文件以及缓冲文件系统、文件指针的概念;

2.学会使用文件打开、关闭、读、写等文件操作函数。

3.学会用缓冲文件系统对文件进行简单的操作。

二、实验内容

编写程序并上机调试运行。

1.编程序求100以内的素数,分别将它输出到显示器屏幕和x.txt文件中,要求每行5个数。

2.从键盘输入几本书的数据,每本书的数据包括条形码、书名和价格,将每项数据分别写入文本文件s.txt和二进制文件s.dat。

*3.从上题的文本文件s.txt或二进制文件s.dat中读入每本书的数据,计算所有书的平均价格。要求用input函数读入,average函数求平均价格。

统计与信息学院

学号:姓名:班级:成绩:实验名称:C程序的运行环境和运

行一个C程序的方法

指导教师:实验日期:

实验地点:实验软件(主要仪器设备):Visual C++6.0

实验要求1.了解Visual C++6.0编译系统的基本操作方法,学会独立使用该系统。

2.了解在该系统上如何编辑、编译、连接和运行一个C程序。

3.通过运行简单的C程序,初步了解C源程序的特点。

实验过程与步骤实验①:

1、打开Visual C++6.0。

2、新建文件C++ Source File,文件名.c

并更改位置后确定。

3、编辑

#include"stdio.h"

int main()

{

printf("This is a C program.\n");

return 0;

}

4、编译,无错误无警告后执行

实验②:

#include"stdio.h"

int main()

{

printf("****************************\n");

printf("Very good!\n");

printf("****************************\n");

return 0;

}

实验③:

#include"stdio.h"

int main()

{

printf("This is a C program.\n");

return 0;

}

实验总结

统计与信息学院

学号:姓名:班级:成绩:

实验名称:数据类型、运算符和表达式指导教师:实验日期:

实验地点:实验软件(主要仪器设备):Visual C++6.0

实验要求1.掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用格式转换符。

2.学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。

实验过程与步骤实验①

1、运行Visual C++6.0并新建工作区

2、输入

#include

main()

{char c1,c2;

c1=321;c2=353;

printf("%c %c\n",c1,c2);

printf("%d %d\n",c1,c2);

}

3、编译,无错误、无警告后运行,结果如下:

4、在步骤2的基础上将第三行、第四行改为:

c1=321;c2=353;

5、编译,无错误、无警告后运行,结果提示:

aa.obj - 0 error(s), 2 warning(s)

6、在步骤2的基础上将第二行改为:

int c1,c2;

7、编译,无错误、无警告后运行,结果如下:

实验②

1、输入

#include

main()

{int i=8,j=10,m,n;

m=++i;n=j++;

printf("%d,%d,%d,%d\n",i,j,m,n);

2、编译,无错误、无警告后运行,结果如下:

3、将步骤2程序改为:

#include

main()

{int i=8,j=10;

printf("%d,%d\n",i++,j++);

}

4、编译,无错误、无警告后运行,结果如下:

5、在步骤3的基础上,将printf语句改为:

printf(“%d,%d\n”,++i,++j);

6、编译,无错误、无警告后运行,结果如下:

7、在步骤3的基础上,将printf语句改为:

printf(“%d,%d,%d,%d\n”,i,j, i++,j++);

8、编译,无错误、无警告后运行,结果如下:

9、将步骤2程序改为:

#include

main()

{int i=8,j=10,m=0,n=0;

m+=i++,n-=--j;

printf("i=%d,j=%d,m=%d,n=%d\n",i,j,m,n);

}

10、编译、运行,结果如下:

}

实验③

1、输入

#include

main()

{int num;

num=32767;

printf("num=%d\n",++num);

}

2、编译,无错误、无警告后运行,结果如下:

3、输入

#include

main()

{int a=-2;

printf("%d,%d\n",a,a--);

}

4、编译,无错误、无警告后运行,结果如下:

统计与信息学院

学号:姓名:班级:成绩:

实验名称:最简单的C程序设计指导教师:实验日期:

实验地点:实验软件(主要仪器设备):Visual C++6.0实

验要求1.掌握C语言中使用最多的一种语句——赋值语句的使用。

2.掌握数据的输入输出的方法,能正确使用各种格式转换符。

实验过程与步骤实验①

1、运行Visual C++6.0并新建工作区

2、输入

#include

main()

{int a,b;float c;

scanf("%d%d%f",&a,&b,&c);

printf("a=%-4d,b=%4d,c=%f,c=%.2f\n",a,b,c,c);

}

3、编译,无错误、无警告后运行,结果如下:

有空格、tab、回车三种输入方式。

4、将步骤2中的scanf("%d%d%f",&a,&b,&c);改为scanf(“%d, %d ,%f”,&a,&b,&c);

5、编译,无错误、无警告后运行,结果如下:

实验②

1、输入

#include

main()

{int a;float b;char c;

scanf("%4d%5f%3c",&a,&b,&c);

printf("a=%d,a=%o,a=%x,b=%8.3f,b=%4.0f,c=%c\n",a,a,a,b,b,c);

}

2、编译,无错误、无警告后运行,结果如下:

实验③

(1)a+b

1、输入

#include

main()

{

int a,b,c;

scanf("%d,%d",&a,&b);

c=a+b;

printf("%d+%d=%d\n",a,b,c);

}

2、编译,无错误、无警告后运行,结果如下:

(2)a-b

1、输入

#include

main()

{

int a,b,c;

scanf("%d,%d",&a,&b);

c=a-b;

printf("%d-%d=%d\n",a,b,c);

}

2、编译,无错误、无警告后运行,结果如下:

(3)a*b

1、输入

#include

main()

{

int a,b,c;

scanf("%d,%d",&a,&b);

c=a*b;

printf("%d*%d=%d\n",a,b,c);

}

2、编译,无错误、无警告后运行,结果如下:(4)a/b

1、输入

#include

main()

{

int a,b,c;

scanf("%d,%d",&a,&b);

c=a/b;

printf("%d/%d=%d\n",a,b,c);

}

2、编译,无错误、无警告后运行,结果如下:

(5)(float)a/b

1、输入

#include

main()

{

int a,b,c;

scanf("%d,%d",&a,&b);

c=(float)a/b;

printf("%d/%d=%d\n",a,b,c);

}

2、编译,无错误、无警告后运行,结果如下:

(6)a%b

1、输入

#include

main()

{

int a,b,c;

scanf("%d,%d",&a,&b);

c=a%b;

printf("%d%%%d=%d\n",a,b,c);

}

2、编译,无错误、无警告后运行,结果如下:

实验④

(1)getchar输出

1、输入

#include

int main()

{

char c1,c2;

c1=getchar();

c2=getchar();

putchar(c1);

putchar(c2);

return 0;

}

2、编译,无错误、无警告后运行,结果如下:

(2)printf输出

1、输入

#include

int main()

{

char c1,c2;

c1=getchar();

c2=getchar();

printf("%c%c\n",c1,c2);

return 0;

}

2、编译,无错误、无警告后运行,结果如下:

统计与信息学院

学号:姓名:班级:成绩:

实验名称:选择结构程序设计指导教师:张雄实验日期:

实验地点:实验软件(主要仪器设备):Visual C++6.0

实验要求1.了解C语言表示逻辑量的方法(以0代表“假”,以1代表“真”);

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

3.熟练掌握if语句和switch语句。

实验过程与步骤实验①

1、运行Visual C++6.0。

2、输入

#include

int main()

{

int x,y;

scanf("%d",&x);

if(x<1)

y=x;

else if(x>=10)

y=3*x-11;

else

y=2*x-1;

printf("x=%d,y=%d\n",x,y);

return 0;

}

3、编译,无错误、无警告后运行,结果如下:

X<1时,

1=

x>=10时,

实验②

(1)if语句

1、输入

#include

main()

{

float x;char ch;

scanf("%f",&x);

if(x>=90) ch="A";

else if(x>=80) ch="B";

else if(x>=70) ch="C";

else if(x>=60) ch="D";

else ch="E";

printf("%c\n",ch);

}

2、编译,无错误、无警告后运行,结果如下:

(2)switch语句

1、输入

#include

main()

{

float x;int y;char ch;

printf("Your score:");

scanf("%f",&x);

y=x/10;

switch(y)

{

case 10:case 9:ch='A';break;

case 8:ch='B';break;

case 7:ch='C';break;

case 6:ch='D';break;

default:ch='E';

}

printf("%c\n",ch);

return 0;

}

2、编译,无错误、无警告后运行,结果如下:

实验③:(水仙花数)

1、输入

#include

int main()

{

int m,a,b,c;

scanf("%d",&m);

if(m/100==0)

{

printf("data error\n");

return 0;

}

a=m%10;

b=(m/10)%10;

c=m/100;

if(m==a*a*a+b*b*b+c*c*c)

{

printf("Y\n",m);

return 0;

}

else

{

printf("N\n",m);

return 0;

}

}

2、编译,无错误、无警告后运行,结果如下:

统计与信息学院

学号:姓名:班级:成绩:

实验名称:循环控制指导教师:实验日期:

实验地点:实验软件(主要仪器设备):Visual C++6.0实

验要求1.熟悉用while语句,do-while语句和for语句实现循环的方法。

2.掌握在程序设计中用循环的方法实现各种算法(如穷举、迭代、递推等)。

实验过程与步骤实验①:输入两个正整数,求其中最大公约

数和最小公倍数。

(1)求最大公约数

1、输入

#include

main()

{int m,n,i,t;

scanf("%d%d",&m,&n);

if(n

{t=n;n=m;m=t;

}

i=m;

while(1)

{if(m%i==0&&n%i==0) break;i--;

}

printf("它们的最大公约数是:%d\n",i);

return 0;

}

2、编译,无错误、无警告后执行,结果如下:

(2)求最小公倍数

1、输入

#include

main()

{int m,n,i,t;

scanf("%d%d",&m,&n);

if(n

{t=n;n=m;m=t;

}

实验②:输入一行字符,分别统计出其中的

英文字母、空格、数字和其它字符的个数。

1、输入

#include

main()

{char c;

int letter,space,number,other;

letter=space=number=other=0;

do

{

c=getchar();

i=m;

while(1)

{if(i%m==0&&i%n==0) break;i++;

}

printf("它们的最小公倍数是:%d\n",i);

return 0;

}

2、编译,无错误、无警告后执行,结果如下:

实验⑤:编写程序输出乘法表

1、输入

#include

main()

{

int i,j;

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

{

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

printf("%d*%d=%-3d",j,i,i*j);

printf("\n");

}

system("pause");

}

2、编译,无错误、无警告后运行,结果如下:

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

printf("*");

printf("\n");

}

for(i=n-1;i>=0;i--)

{for(j=1;j<=n-i;j++)

printf(" ");

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

printf("*");

printf("\n");

}

if(c>='a'&&c<='z'||c>='A'&&c<='Z')

letter++;

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

number++;

else if(c==' ')

space++;

else

other++;

}

while(c!='\n');

printf("letter=%d,space=%d,number=%d, other=%d\n",letter,space,number,other);

return 0;

}

2、编译,无错误、无警告后执行,结果如下:

实验③:打印出以下图案:7行7列菱形

1、输入

#include

#define n 3

int main()

{int i,j;

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

{for(j=1;j<=n-i;j++)

printf(" "); }

2、编译,无错误、无警告后运行,结果如下:

实验④:编程求1!+2!+3!+……+20!。

1、输入

#include

int main()

{

int n,m=1,sum=0;

for(n=1;n<=20;n++)

{

m=n*m;

sum=sum+m;

}

printf("1+2!+3!...+20!=%d\n",sum);

}

2、编译,无错误、无警告后运行,结果如下:

统计与信息学院

学号:姓名:班级:成绩:实验名称:数组指导教师:实验日期:

实验地点:实验软件(主要仪器设备):Visual C++6.0

实验要求1.掌握一维数组和二维数组的定义、赋值和输入输出的方法;

2.掌握字符数组和字符串函数的使用。

3.掌握与数组有关的算法(特别是排序算法)。

实验过程与步骤实验①:编写程序,用scanf函数输入10个整数

的数列,先将整数按照从大到小的顺序进行排序,

然后输入一个整数插入到数列中,使数列保持从

大到小的顺序。

1、输入

#include

main ()

{void Rank(int N,int n[]);

int i,j,k;

int n[11];

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

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

Rank(10,n);

scanf("%d",&k);

if(k>n[9])

n[10]=k;

else

{for(i=0;n[i]<=k;i++);

for(j=9;j>=i;j--)

n[j+1]=n[j];

n[i]=k;

}

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

printf("%-4d",n[i]);

printf("\n");

}

void Rank(int N,int n[])

{ int i,k,t;

for(k=1;k<=N-1;k++)

for(i=N-1;i>=k;i--)

if(n[i-1]>n[i])

实验②:有15个数存放在一个数组中,输入一个

数,要求用折半查找法找出该数是数组中第几个

元素的值,如果该数不在数组中,则输出“无此

数”,并且可以实现连续查找。15个数用赋初

值的方法在程序中给出,要找的数用scanf函数

输入。

1、输入

{t=n[i];

n[i]=n[i-1];

n[i-1]=t;

}

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

printf("%-4d",n[i]);

printf("\n");

}

2、编译,无错误、无警告后运行,运行结果如下:

实验④:将两个字符串连接起来,不要用strcat函

数。

1、输入

#define M 50

#define N 20

main ()

{char a[M],b[N];int i,j;

gets(a);

gets(b);

for(i=0;a[i]!='\0';i++);

for(j=0;b[j]!='\0';j++)

{a[i]=b[j];i++;}

a[i]='\0';

puts(a);

}

2、编译,无错误、无警告后运行,运行结果如下:

实验⑤:从键盘输入5个字符串,找出最长的字符

串和最大的字符串。

1、输入

#include "string.h"

#define N 20

main()

{

#include

main()

{

static int i,j,m,a[15]={2,10,13,24,35,59,68,78,

98,102,234,526,649,758,893};

scanf("%d",&m);

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

printf("%4d",a[j]);

printf("\n");

i=7;

while(fabs(i-7)<8)

{

if(m

{

if(a[i]-m==0)

{

printf("it is at (%d)\n",i+1);break;

}

i--;

}

else if(m>a[7])

{

if(a[i]-m==0)

{printf("it is at (%d)\n",i+1);break;}

i++;

}

else

printf("8\n");

}

if(fabs(i-7)-8==0)

printf("无此数\n");

}

2、编译,无错误、2警告后运行,运行结果如下:

实验③:将以下二维数组中数按列的顺序存放到

一个一维数组中。二维数组的内容是

11 22 33 44

11 22 33 44

11 22 33 44

则一维数组中的内容是11 11 11 22 22 22

33 33 33 44 44 44

char a[5][N],max[N],m,n,max1;

int b[5];

int i,j;

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

gets(a[i]);

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

b[i]=strlen(a[i]);

max1=b[0];

m=0;

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

if(b[i]>=max1)

{

max1=b[i];

m=i;

}

strcpy(max,a[0]);

n=0;

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

if(strcmp(a[i],max)>=0)

{

strcpy(max,a[i]);

n=i;

}

printf("\n");

puts(a[m]);

puts(a[n]);

}

2、编译,无错误、无警告后运行,运行结果如下:

m=0;

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

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

{

b[m]=a[i][j];

m++;

}

大一上期C语言实验报告1熟悉实验环境

成都工业学院·计算机工程学院 《程序设计基础》实验报告 1.实验目的 (1)熟悉C语言运行环境,了解和使用Visual6.0++集成开发环境(2)熟悉Visual6.0++环境的功能键和常用的功能菜单命令 (3)掌握C语言程序的书写格式和C语言程序的结构 (4)掌握C语言上机步骤,以及编辑、编译和运行一个C语言程序的方法 (5)熟悉Visual6.0++环境下的程序调试方法 2.实验内容 (1)按照实验步骤编辑、编译、运行第一个”Hello World”程序(2)利用实验指导中的第二个程序熟悉调试工具,在已知x,y值的情况下,计算出x和y的和、差、积、商,并显示出来(3)编写一个程序,输入a、b、c三个值,输出它们的和与平均值c 3.源程序 (1)#include void main() {printf(”Hello World”);} (2)#include void main() {int x=5,y=2; int s,d,p,q; s=x+y; d=x-y; p=x*y; q=x/y; printf(“和:%d差:%d积%d商:%d“,s,d,p,q);}

(3)#include void main() {int a,b,c.sum; float ave; Printf(“Please enter the a,b,c:”); scanf(“%d%d%d”,&a,&b,&c); sum=a+b+c; ave=(float)sum/3; printf(“sum=%d,ave=%f\n”,sum,ave);} 4.运行结果 (1) (2) (3)输入18、46、69测试得出答案如下

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程序。 3.通过运行简单的C程序,初步了解C源程序的特点。 二、实验内容 1.用编辑程序,输入教材第一章例1.1程序,并进行编译和运行。应了解所用的系统是用什么命令进行编译和连接运行的。编译和连接后所得到的目标程序的后缀是什么形式的? 2.编写一个C程序,输出以下信息: **************************** very good! **************************** 3.输入并运行教材第一章中例1.3,了解如何在运行时向程序变量输入数据。 实验二数据类型、运算符和表达式 一、实验目的 1.掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用格式转换符。 2.学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。 二、实验内容 1.输入并运行以下程序: main( ) { char c1,c2; c1=97;c2=98; pr intf(“%c %c\n”,c1,c2); printf(“%d %d\n”,c1,c2); } 在此基础上 ①将第三行、第四行改为: c1=321;c2=353; 再使之运行,分析其运行结果。 ②将第二行改为: int c1,c2; 再使之运行,分析其运行结果。。 2.输入并运行以下程序:

C语言程序设计实验报告参考答案

长沙理工大学C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述四、程序清单 1.编写程序实现在屏幕上显示以下结果: Thedressislong Theshoesarebig Thetrousersareblack 答案: #include main() { printf("Thedressislong\n"); printf("Theshoesarebig\n"); printf("Thetrousersareblack\n"); } 2.改错题(将正确程序写在指定位置) 正确的程序为: #include main() {

printf("商品名称价格\n"); printf("TCL电视机¥7600\n"); printf("美的空调¥2000\n"); printf("SunRose键盘¥50.5\n"); } 2.编写程序:a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 答案: #include main() { inta,b,c,x,y; a=150; b=20; c=45; x=a/b; y=a/c; printf("a/b的商=%d\n",x);

printf("a/c的商=%d\n",y); x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } 4.设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符) 答案: #include main() { inta,b,c; a=0; b=-10; c=(a>b)?b:a; printf("c=%d\n",c); }

C语言实验报告参考答案 原

C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述 四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include main() { printf("The dress is long\n"); printf("The shoes are big\n"); printf("The trousers are black\n"); } 2.编写程序: (1) a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 (2)a=160,b=46,c=18,d=170, 编写求(a+b)/(b-c)*(c-d)的程序。 答案: (1) #include main() {

int a,b,c,x,y; a=150; b=20; c=45; x=a/b; y=a/c; printf("a/b的商=%d\n",x); printf("a/c的商=%d\n",y); x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } (2) #include main() { int a,b,c,d; float x; a=160; b=46; c=18;

d=170; x=(a+b)/(b-c)*(c-d); printf("(a+b)/(b-c)*(c-d)=%f\n",x); } 3. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b 时,将0赋给c。(提示:用条件运算符) 答案: #include main() { int a,b,c; a=0; b=-10; c= (a>b) ? b:a; printf("c = %d\n",c); } 五、调试和测试结果 1.编译、连接无错,运行后屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 2、(1) 编译、连接无错,运行后屏幕上显示以下结果: a/b的商=7

C语言程序设计实验报告(实验大纲+过程)之欧阳家百创编

《C程序设计》实验教学大纲 欧阳家百(2021.03.07) 一、适用范围 大纲适用信息管理专业本科教学使用。 二、课程名称 C程序设计 三、学时数与学分 总学时:90 总学分: 4 实验学时:28 实验学分:1 四、教学目的和基本要求 目的:通过C程序设计实验,培养学生对学习程序设计的兴趣,加深对讲授内容的理解,尤其是通过上机来掌握语法规则,使学生全面了解C 语言的特点,熟练掌握C 语言程序设计的基本方法和编程技巧。 基本要求:了解和熟悉C语言程序开发的环境;学会上机调试程序,善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行,达到实验知识和理论知识的融会贯通。上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止,上机结束后,应整理出实验报告。 五、实验项目与学时分配

注:带*的实验项目为选做实验项目 六、教材、讲义及参考书 《C程序设计题解与上机指导》谭浩强主编清华大学出版社 七、实验成绩评定办法 实验成绩=平时实验表现+实验报告。实验成绩占总成绩的20%。 实验成绩以等级形式给出,评定等级分优、良、中、及格、不及格五类。 1、平时考核:上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止。在实验中,教师可根据学生编程操作能力、观察和分析及运用知识能力、程序编制正确性以及学生的课堂纪律、实验态度、保持实验室卫生等方面的表现进行综合考核。 2、实验报告:学生实验后应按时完成实验报告。 八、实验教学大纲说明 本大纲共安排28学时的实验,其中带*号实验项目为选做实验项目,实际课时为18学时。实验项目多为设计性实验项目,每

物理实验报告格式范文

物理实验报告格式范文 一、实验目的 二、实验仪器和器材(要求标明各仪器的规格型号) 三、实验原理:简明扼要地阐述实验的理论依据、计算公式、画出电路图或光路图 四、实验步骤或内容:要求步骤或内容简单明了 五、数据记录:实验中测得的原始数据和一些简单的结果尽可能用表格形式列出,并要求正确表示有效数字和单位 六、数据处理:根据实验目的对测量结果进行计算或作图表示,并对测量结果进行评定,计算误差或不确定度. 七、实验结果:扼要地写出实验结论 八、误差分析:当实验数据的误差达到一定程度后,要求对误差进行分析,找出产生误差的原因. 九、问题讨论:讨论实验中观察到的异常现象及可能的解释,分析实验误差的主要来源,对实验仪器的选择和实验方法的改进提出建议,简述自己做实验的心得体会,回答实验思考题. 物理探究实验:影响摩擦力大小的因素 技能准备:弹簧测力计,长木板,棉布,毛巾,带钩长方体木块,砝码,刻度尺,秒表。 知识准备: 1. 二力平衡的条件:作用在同一个物体上的两个力,如果大小相等,方向相反,并且在同一直线上,这两个力就平衡。 2. 在平衡力的作用下,静止的物体保持静止状态,运动的物体保持匀速直线运动状态。 3. 两个相互接触的物体,当它们做相对运动时或有相对运动的趋势时,在接触面上会产生一种阻碍相对运动的力,这种力就叫摩擦力。 4. 弹簧测力计拉着木块在水平面上做匀速直线运动时,拉力的大小就等于摩擦力的大小,拉力的数值可从弹簧测力计上读出,这样就测出了木块与水平面之间的摩擦力。

探究导引 探究指导: 关闭发动机的列车会停下来,自由摆动的秋千会停下来,踢出去的足球会停下来,运动的物体之所以会停下来,是因为受到了摩擦力。 运动物体产生摩擦力必须具备以下三个条件:1.物体间要相互接触,且挤压;2.接触面要粗糙;3.两物体间要发生相对运动或有相对运动的趋势。三个条件缺一不可。 摩擦力的作用点在接触面上,方向与物体相对运动的方向相反。由力的三要素可知:摩擦力除了有作用点、方向外,还有大小。 提出问题:摩擦力大小与什么因素有关? 猜想1:摩擦力的大小可能与接触面所受的压力有关。 猜想2:摩擦力的大小可能与接触面的粗糙程度有关。 猜想3:摩擦力的大小可能与产生摩擦力的两种物体间接触面积的大小有关。 探究方案: 用弹簧测力计匀速拉动木块,使它沿长木板滑动,从而测出木块与长木板之间的摩擦力;改变放在木块上的砝码,从而改变木块与长木板之间的压力;把棉布铺在长木板上,从而改变接触面的粗糙程度;改变木块与长木板的接触面,从而改变接触面积。 物理实验报告 .化学实验报告 .生物实验报告 .实验报告格式 .实验报告模板 探究过程: 1. 用弹簧测力计匀速拉动木块,测出此时木块与长木板之间的摩擦力:0.7N 2. 在木块上加50g的砝码,测出此时木块与长木板之间的摩擦力:0.8N 3. 在木块上加200g的砝码,测出此时木块与长木板之间的摩擦力:1.2N 4. 在木板上铺上棉布,测出此时木块与长木板之间的摩擦力:1.1N 5. 加快匀速拉动木块的速度,测出此时木块与长木板之间的摩擦力:0.7N 6. 将木块翻转,使另一个面积更小的面与长木板接触,测出此时木块与长木板之间的摩擦力:0.7N 探究结论:

C语言程序设计实验与习题答案

2.程序填空 (1)以下程序的功能是计算1~50之间能被7整除的整数之和。 #include void main() {int i,sum= 0; for(i=1;50;i++) if(i%7==0) sum+=i; printf("sum=%d\n",sum); } (2) 下面程序接收来自键盘的输入,直到输入+Z(值为-1)键为止。这些字符被原样输出,但若有连续一个以上的空格时只输出一个空格。请填空。 #include void main() {char cx; char front=’’; while ((cx=getchar())!=’\n’) {if (cx!=’’) putchar(cx); if (cx= =’’) if (front!=’’) putchar(cx); front=cx; } } 3.程序改错 (1)下列程序的功能是求1+3+5+…99的和。

#include void main( ) { int s,i; ★//int s=0,i; i=1; while(i<=99)s=s+i;★//{s=s+i;i++;} printf("1+3+5+…99的和是:%d\n",s); } (2)下面程序的功能是输入一个正整数,判断是否是素数,若 为素数输出1,否则输出0。 #include void main() { int i,x,y=0; ★//y=1 scanf("%d",&x); for(i=2;i<=x/2&&y;i++) if ((x%i)!=0) y=0; ★//x%i==0 printf("%d\n",y); } 4.设计性实验 (1)题 /* 方法(1)精度控制*/ #include

C语言实验报告参考答案

长沙理工大学2010C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述 四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include<> main() { printf("The dress is long\n"); printf("The shoes are big\n"); printf("The trousers are black\n"); } 2.改错题(将正确程序写在指定位置) 正确的程序为: #include <> main() { printf("商品名称价格\n"); printf("TCL电视机¥7600\n"); printf("美的空调¥2000\n"); printf("SunRose键盘¥\n"); } 2.编写程序: a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 答案: #include<> main() { int a,b,c,x,y; a=150; b=20; c=45;

x=a/b; y=a/c; printf("a/b的商=%d\n",x); printf("a/c的商=%d\n",y); x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } 4. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符) 答案: #include<> main() { int a,b,c; a=0; b=-10; c= (a>b) ? b:a; printf("c = %d\n",c); } 五、调试和测试结果 1.编译、连接无错,运行后屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 3、编译、连接无错,运行后屏幕上显示以下结果: a/b的商=7 a/c的商=3 a/b的余数=10 a/c的余数=15 4. 编译、连接无错,运行后屏幕上显示以下结果: c =-10 实验二顺序结构程序设计 四、程序清单 1.键盘输入与屏幕输出练习 问题1 D 。 问题2 改printf("%c,%c,%d\n",a,b,c);这条语句

C语言程序设计实验报告(实验大纲+过程)

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程序。 3.通过运行简单的C程序,初步了解C源程序的特点。

C语言程序设计实验报告(数组)

C语言程序设计实验报告(数组) 1实验目的 (1)熟练掌握一维数组,二维数组的定义,初始化和输入、输出方法; (2)熟练掌握字符数组和字符串函数的使用; (3)掌握与数组有关的常用算法(查找、排序等)。 2实验内容 编写函数catStr(char str1[],char str2[])用于进行两个字符串的连接,编写函数lenStr(char str[])用于统计一个字符串的长度,并在主函数中调用。 要求: 1、不允许用strcat()和strlen()字符处理库函数; 2、在主函数以直接初始化的方式输入两个字符串str1和str2.调用函数 strlen()计算并返回两个字符串的长度; 3、调用函数catstr()连接两个字符串(将str2连接在str1后面); 4、调用函数lenstr()计算并返回连接后字符串的长度; 5、在主函数中输入两个原始的字符串及几个字符串的长度,以及处理后字 符串及其长度。

3算法描述流程图

4源程序 #include #include void catStr(char str1[],char str2[]) { int i,j; for (i=0;str1[i]!='\0';i++); for(j=0;str2[j]!='\0';j++) str1[i+j]=str2[j]; str1[i+j]='\0'; } lenStr(char m[] ) {int i;

for (i=0;m[i]!='\0';i++); printf("%d",i); } void main() {char s1[50]="forever",s2[50]="more"; printf("s1=%s,s2=%s",s1,s2); printf("\ns1的长度:"); lenStr(s1); printf("\ns2的长度:"); lenStr(s2); catStr(s1,s2); printf("\n连接后的字符:"); printf("%s\n",s1); printf("连接后字符的长度:"); lenStr(s1); printf("\n"); } 5测试数据 s1=forever, s2=more 6运行结果 7出现问题及解决方法 在输入程序时,少写了半边引号,调试时发现存在错误,找到了错误并加以改正。无论什么事,细心都是必不可少的,认真是解决问题的关键。 8实验心得 通过本次实验,对于函数的定义和声明,数组以及循环语句有了进一步的认识,掌握了字符数组和字符串函数的使用,以及与数组有关的常用算法。此次实验不是调用strlen()和strcat()函数,而是通过自己设计程序来进行字符串的连接以及计量字符串的长度,由此我学会了如何去理清自己的思路来设计程序。

2010C语言实验报告参考答案

2010C语言实验报告参考答案

长沙理工大学2010C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include main() { printf("The dress is long\n"); printf("The shoes are big\n"); printf("The trousers are black\n"); } 2.改错题(将正确程序写在指定位置) 正确的程序为: #include main() {

printf("商品名称价格\n"); printf("TCL电视机¥7600\n"); printf("美的空调¥2000\n"); printf("SunRose键盘¥50.5\n"); } 2.编写程序: a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 答案: #include main() { int a,b,c,x,y; a=150; b=20; c=45; x=a/b; y=a/c; printf("a/b的商=%d\n",x); printf("a/c的商=%d\n",y);

x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } 4. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符) 答案: #include main() { int a,b,c; a=0; b=-10; c= (a>b) ? b:a;

实验报告总结报告的优秀范文

实验报告总结报告的优秀范文 总结报告是会议领导同志对会议召开的情况和会议所取得的成果进行总结的陈述性文件。写总结报告时应注意明确目的,突出重点,切不可面面俱到;要鼓舞人心,富有号召力。小编精选了一些关于总结报告的优秀范文,让我们一起来看看吧。 实验报告总结(一): 学校实验室是完成教学任务的重要场地,是根据实验教学大纲中要求培养学生初步的科学实验能力和开展科技活动的场所,并对开展实验教学,提高教学质量具有十分重要的作用。对于一个拥有各类实验室且实验仪器基本配套齐全的学校来讲,管理是关键,因为只有管理跟上去了,才能更合理、有效地使用好各类仪器设备。对此,作为一所中学的实验室人员,我们在长期的工作实践中做了如下几个方面的工作: 一、努力提高自身素质 实验人员是科学管理实验室的基本队伍,在整个实验室的管理和运作中起着决定性的作用。一个好的实验员,可以改变整个实验室的面貌,推动实验教学的发展;而一个差的实验员,可导致整个实验室变成脏、乱、差的劣境,从而使实验教学无法正常进行。因此,我们每一个实验员,一方面在平时加强政治学习,提高自身素质,使大家在平凡的点滴工作中认识到这项工作的重要性,从而更加热爱本职工作。另一方面,我们还不断去兄弟学校和单位进行学习交流,参加实验设备和成果展览。这不仅使我们开阔了视野,了解了实验仪器发展的新情况,更看到了兄弟单位的先进管理经验,有利于我们在今后的工作中加以借鉴和改进。

同时学校还鼓励我们总结自己的经验,撰写论文,或进行业余进修,以增强我们在各方面的修养。由于平时有着严格的要求和业务考核,现有的每一位理、化、生实验员都能很好地胜任自己的工作,做到实验室整洁有序,实验准备快捷无误,从而保证了各项教学实验的顺利完成。 二、健全各项规章制度 俗话说没有规矩,不成方圆。我们学校根据上级的规定和本校的具体情况,制定了比较健全的规章制度:如《实验室管理守则》、《学生实验守则》、《实验室工作人员职责》、《实验室安全防护制度》等,进而做到使每项工作都有章可循,有据可查。除此以外,我们还对危险品的使用实行了领用登记手续,从而保证了对危险品的安全管理。由于各位实验员的同心协力,齐抓共管,保证了各项制度的顺利贯彻和实验室工作的正常开展。 三、科学管理仪器设备 仪器设备的规范管理是合理使用仪器的保证,为此我们做了以下的工作: 首先,我们根据建帐要求,设立了总帐、分类明细帐、低值易耗帐,并建立了橱卡,注明仪器的编号、名称、数量。平时对购进或调拨来的仪器设备物品都按统一编号顺序进行登记入帐,且对消耗掉的物品及时记入各分类记录薄上。每学期末都进行一次帐、物、卡核实,并把报废报损的仪器遣报损单,经领导批审后销帐,ZUI后把核查的数目转入总帐、分类帐上,这样就能做到巾长物卡三统一了。

哈工大(威海)c语言实验报告册答案

实验1简单判定性问题求解 一、实验学时 完成本实验需4学时。 二、实验目的 1、阅读程序题 (1)掌握C语言数据类型,熟悉如何定义一个整型、字符型的变量,以及对它们赋值的方法; (2)掌握不同的类型数据之间赋值的规律; (3)掌握数据在内存中的存储方式; (4)学会输入、输出函数的基本格式和使用方法; (5)学会使用有关算术运算符、逻辑运算符、关系运算符,以及包含这些运算符的表达式。 2、编程题 (1)如何运用if-else判定性结构进行程序设计; (2)如何运用switch判定性结构进行程序设计。 3、调试题 (1)熟悉C程序的编辑、编译、连接和运行的过程。 三、实验指导 为了达到最佳的实验效果,以下提供几条适于编程的指导意见,可供参考。 1、阅读程序题应先运用自己在课堂所学的知识,推导出结果,在上机时输入计算机,印证自己推导的结果,注意观察数据在内存中的存储方式、含不同种运算符表达式的输出结果。 2、编程题必须首先画出流程图,并反复思考判断程序设计的正确性,完成程序的设计。要注意简单判定性问题的结构选择。 3、调试题应明确程序的调试、测试是一项非常烦琐的工作,也是非常重要的工作。对于初学者来说应该建立良好的习惯,在调试程序的时候,应该尽可能考虑到程序运行时各种可能情况。

四、实验内容 1、阅读程序题 (1)main( ) { /*定义字符型变量*/ char c1,c2; /*向字符变量赋以整数*/ c1=97; c2=98; printf("%c %c\n",c1,c2); /*以字符形式输出*/ printf("%d %d\n",c1,c2); /*以整数形式输出*/ } 思考:可否改成int c1,c2;输出结果是?相同 (2)main() { int a=7,b=5; printf("%d\n",b=b/a); } 思考:若将printf语句中%d变为%f,可否输出分式的值?可以(3)main() { int a=9; a+=a-=a+a; /*包含复合的赋值运算符的赋值表达式*/ printf("%d\n",a); } 思考:赋值表达式a+=a-=a+a的求解步骤? 第一步:a=a-(a+a)=-9 第二步a=a+a=18 (4)main() { int k=-1; printf("%d,%u\n",k,k);

C语言程序设计实验实验指导书及答案

实验一熟悉C程序运行环境 班级学号姓名成绩 一、实验目的 1. 熟悉C语言Visual C++调试环境。 2. 掌握C程序的编辑、调试及运行。 二、实验内容 项目1. 调试并运行下面程序,并写出运行结果: #include <> int main() { printf(“Good morning!\n”); printf(“Hello,world!\n”); return 0; } 运行结果(注意,按照屏幕输出格式写): 项目2. 调试并运行下面程序,并写出运行结果: #include <> int main() { int a , b , sum; /*定义变量*/ a=23; b=56; /*为变量赋值*/ sum=a+b; /*计算两个变量的和*/ printf(“sum is %d\n”,sum); /*输出计算结果*/ return 0; } 运行结果:

项目3. 调试并运行下面程序,并写出运行结果: #include <> int max(int,int); int main() { int a , b , c; /*定义变量*/ a=23; b=56; /*为变量赋值*/ c=max(a,b); /*调用max函数,将得到的值赋给c*/ printf(“max is %d\n”,c); /*输出c的值*/ return 0; } int max(int x,int y) /*定义max函数,函数值为整型*/ { int z; /*定义变量*/ if(x>y) z=x; else z=y; return(z); /*将z的值返回*/ } 运行结果: 三、提高部分 1.试想,如果求10个数中的最大者,则程序该如何编写。 程序代码 运行结果:

C语言实验报告参考源代码

实验5三种基本结构的综合应用 4.一个素数(设为p)依次从最高位去掉一位,二位,三位,……,若得到的各数仍都是素数(注:除1和它本身外,不能被其它整数整除的正整数称为素数,1不是素数,2是素数),且数p的各位数字均不为零,则称该数p为逆向超级素数。例如,617,17,7都是素数,因此617是逆向超级素数,尽管503,03,3都是素数,但它不是逆向超级素数,因为它包含有零。试求[100,999]之内的所有逆向超级素数的个数。 #include "stdio.h" main() {int i,j,k,m,p,q,n=0; for(i=100;i<=999;i++) {for(j=2;j=i) /*三位数是素数时*/ {k=i%100; /*去掉百位数字*/ if(k>=10) /*十位数字不是0时*/ {for(m=2;m=k) /*两位数是素数时*/ {p=i%10; /*p为个位数字*/ for(q=2;q=p)n++;}}}} printf("%d\n",n);} Key:57 5.求[2,400]中相差为10的相邻素数对的对数。 #include "stdio.h" main() {int i,j,k,m,p,q,n=0; for(i=2;i<=400;i++) {for(j=2;j=i) /*i是素数时*/ {for(k=i+1;k=k)break;} /*k是素数时终止if语句的外层循环*/ if(k>=i+10) /*[i+1,i+9]不是素数时*/ {for(q=2;q

初中实验报告范文

初中实验报告范文 篇一:初中毕业化学实验报告 一、实验内容(含实验原理介绍): 二、实验目的 三、涉及实验的相关情况介绍(包含使用软件或实验设备等情况): 四、实验结果(含程序、数据记录及分析和实验总结等,可附页): 1.常用仪器的名称、形状和主要用途。 2.化学实验的基本操作 (1)药品的取用和称量 (2)给物质加热 (3)溶解、过滤、蒸发等基本操作 (4)仪器连接及装置气密性检查 (5)仪器的洗涤 (6)配制一定质量分数的溶液 3.常见气体的实验室制备及收集 (1)三种气体(H2、O2、CO2)的制备 (2)三种气体的收集方法 4.物质的检验与鉴别 (1)常见气体的检验及鉴别

(2)(2)两酸、两碱及盐的鉴别 5.化学基本实验的综合 把握好以上这些知识点的关键是要做好以下几个方面: (1)化学实验就要动手,要进入化学实验室,参与化学实践的一切活动。在实验室要观察各种各样各具用途的实验仪器、实验用品、实验药品试剂,各种各类药品,它们的状态、气味、颜色、名称、使用注意事项。还要观察各种各类成套的实验装置。在老师指导下,自己也应动手做所要求完成的各种实验,在实验过程中应有目的地去观察和记忆。例如: ①各种仪器的名称、形状、特点,主要用途,如何正确使用,使用时应注意的事项。 ②无论做什么内容的实验都离不开化学实验的基本操作,因此,要熟练掌握各项化学实验的基本操作,明确操作的方法、操作的注意事项,且能达到熟练操作的程度。 ③还应注意观察各种实验现象,这是培养观察能力、思考问题、分析问题最开始的一步。下面还要进一步详细说明。 ④动手做记录,因为在实验活动中感性知识很多,如不做记录,可能被遗忘或遗漏。这都不利于对实验的分析和判断。 (2)如何做好观察 观察能力是同学们应具备的各种能力之一,观察是获得感性认识最直接的手段,学会观察事物,无论现在或将来都是受益匪浅的基本素质。特别是对于化学实验的现象更要求学会观察,要

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

文档从网络中收集,已重新整理排版.word版本可编辑.欢迎下载支持. 《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环境下输入并运行下面的程序: #include int main( ) { printf("This is a C program.\n"); return 0; } 2. 在Visual C++ 6.0环境下输入下面的程序(有语法错误),编译、连接、调试该程序,直至程序 无语法错误,然后运行程序,并观察分析运行结果。 #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

2. (1) 改正后的源程序: #include int 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. 掌握++、--运算符、赋值运算符及其表达式的使用方法。 二、预习内容:

实验报告编写格式和基本要求

《园林施工与管理》实验指导大纲 一、实验内容 ①园林场地平面施工图放样;②园林场地竖向测量。 二、实验地点 西南林业大学教学主楼前 三、实验目的及要求 ①掌握实际工作进行园林图纸现场放样的方法。 ②掌握运用皮尺进行多种常见园林场地形状的画法。 ③熟悉水准仪的构造和使用方法。 ④掌握普通水准测量的观测,记录,计算和检核的方法。 四、实验分组 每组学生不超过12人。(班长和学习委员进行分组) 五、实验仪器及工具 ①皮尺、水准仪(由班长和学习委员到园林学院借取) ②图版、图纸、稿纸、记录笔、计算器(自带) ③粉笔(组长教室取用) 六、主要实验步骤与方法 (一)场地平面施工图绘制 根据所给图纸,在教学主楼前开阔地带,运用皮尺,借鉴几何制图的原理,使用粉笔绘制与图纸相吻合的园林场地。 1.认真阅读图纸 2.基准点的确定(参照法) 3.直线或折线场地的绘制(坐标法、网格法、勾股定律) 4.圆形场地的绘制(坐标法) 5.菱形场地的绘制(坐标法) 6.椭圆形场地的绘制(坐标法、四心圆弧法) 9.乔木种植点的确定(坐标法) 10.片植地被植物的绘制(坐标法、网格法) 11.将放样坐标标识在图纸上 (二)场地竖向测量 1.水准仪使用步骤 ①安置仪器;②粗略整平③瞄准水准尺④精平与读数。 2.水准测量 ①依次测量各主要场地控制点的现状标高,并使用标识在场地上。 ②根据现状标高和图纸设计成型标高计算场地标高差值,并标识在场地上;其中,挖方场地控制点前加“+”号以示区别,填方场地控制点前加“-”号以示区别。 ③将场地竖向采取相同的方法标识在图纸上。

七、实验成果 根据实验过程和结果,文字描绘和草图绘制相结合,编写本实验的全过程实验报告。(仅能使用手写版,字数不少于3000字。提交时间:实验结束后的周四上午十点前) 八、实验报告编写要求 1.实验名称——(园林施工与管理——平面和立面放样) 2.实验内容①园林场地平面施工图放样;②园林场地竖向测量。 3.实验地点——西南林业大学教学主楼前 4.实验目的——结合本实验,简明扼要说明本实验在理论学习和专业实践中的作用。 5.实验工具——根据现场使用过的各种工具进行编写。 6.实验基本背景——简要介绍实验图纸的基本场地和设计概况 7.实验数据及结果——紧紧围绕图纸的平面放样过程、竖向测量过程,详细编写使用了什么工具?什么顺序?什么方法(绘制方法、仪器方法、测量丈量方法)?多大参数? 8.平面放样过程图纸——参照所给图纸,将各种放样参数和过程依次绘制草图标识清楚 9.场地竖向测量图纸——使用所给图纸,根据现场测量顺序,绘制各场地控制点测量的原始标高、挖填高差值。 10简要谈谈本实验在大学专业知识学习方面的应用感想。 11.简要谈谈本实验对未来专业工作的应用设想和思考。

实验报告

实验报告 §3.8 数据插值与拟合实验 一、实验目的及意义 [1] 了解插值、最小二乘拟合的基本原理 [2] 掌握用MATLAB计算一维插值和两种二维插值的方法; [3] 掌握用MATLAB作最小二乘多项式拟合和曲线拟合的方法。 二、实验内容 1.针对实际问题,试建立数学模型。用MATLAB计算一维插值和两种二维插值的方法求解; 1.用MATLAB中的函数作一元函数的多项式拟合与曲线拟合,作出误差图; 2.用MATLAB中的函数作二元函数的最小二乘拟合,作出误差图; 3.针对预测和确定参数的实际问题,建立数学模型,并求解。 三、实验步骤 1.开启软件平台——MATLAB,开启MATLAB编辑窗口; 2.根据各种数值解法步骤编写M文件 3.保存文件并运行; 4.观察运行结果(数值或图形); 5.根据观察到的结果写出实验报告,并浅谈学习心得体会。

四、实验要求与任务 根据实验内容和步骤,完成以下具体实验,要求写出实验报告(实验目的→问题→数学模型→算法与编程→计算结果→分析、检验和结论→心得体会) 1.山区地貌:在某山区测得一些地点的高程如下表3.8。平面区域为: 1200<=x<=4000,1200<=y<=3600) 试作出该山区的地貌图和等高线图,并对几种插值方法进行比较。 x0=1200:400:4000; y0=1200:400:3600; z0=[1130,1250,1280,1230,1040,900,500,700; 1320,1450,1420,1400,1300,700,900,850; 1390,1500,1500,1400,900,1100,1060,950; 1500,1200,1100,1350,1450,1200,1150,1010; 1500,1200,1100,1550,1600,1550,1380,1070; 1500,1550,1600,1550,1600,1600,1600,1550; 1480,1500,1550,1510,1430,1300,1200,980]; meshc(x0,y0,z0) xlabel('x'); ylabel('y'); zlabel('z') title('原始图')

相关文档
相关文档 最新文档