C语言实验指导1Word格式.docx
《C语言实验指导1Word格式.docx》由会员分享,可在线阅读,更多相关《C语言实验指导1Word格式.docx(9页珍藏版)》请在冰豆网上搜索。
掌握变量的作用域(局部变量和全局变量)、存储类型;
了解内部函数和外部函数及主函数和命令行参数。
8、掌握宏定义的形式(带参数的宏定义、不带参数的宏定义);
掌握文件包含的形式和应用;
了解条件编译的定义形式和应用。
9、掌握直接存取和间接存取;
掌握指针变量的概念和应用;
掌握数组与指针、函数与指针之间的关系;
了解指向指针的指针。
10、掌握结构体、共用体的概念、存储特点,及应用;
了解结构体数组的使用;
掌握结构体与数组、指针、函数之间的操作;
掌握链表的概念和基本操作。
了解共用体、自定义类型、枚举类型的概念和应用。
11、掌握位运算的基本概念;
掌握简单的位运算符及应用
12、掌握文件的基本操作;
掌握有关文件操作的函数及其它读写函数。
三、教学内容和要求
第一章c语言概述
实践教学:
属性:
实验
时间:
2学时。
实践教学内容:
实验目的:
熟悉集成开发环境、创建c程序项目与文件的过程。
实验内容和步骤:
1.找到并进入集成环境
2.熟悉集成环境及其菜单的使用
3.练习一个完整程序开发过程
4.在集成开发环境中新建项目Ex1_1
5.在集成开发环境中新建文件Ex1_1.c编辑如下程序:
#include<
stdio.h>
main()
{
printf(“欢迎使用TruboC!
”);
/*输出字符串*/
}
6.在集成环境中编译、运行,查看运行结果
设备及生均耗材要求:
计算机机房
实践考核办法:
检查学生程序结构和执行情况,并给出评分。
第二章数据类型、运算符与表达式
2学时。
掌握C语言各种基本数据类型的定义方法;
掌握C语言中常用的运算符的功能和使用方法;
初步了解运算符的优先级别和结合性,熟悉运算符、表达式,掌握标准输入输出函数的适用方法和顺序结构程序设计的一般方法。
1.编程,利用sizeof()函数,了解C语言各种数据类型所占的存储空间大小,将编写的源程序以文件名ex2_1.c存储,并编译、调试、执行。
2.编程,利用函数sqrt(),求出从键盘输入的任意正整数的平方根。
将编写的源程序以文件名ex2_2.c存储,并编译、调试、执行。
3.输入下列源代码,改正其中存在的错误,使其调试通过,记录正常运行结果。
将编写的源程序以文件名ex2_3.c存储
#include“sdtio.h”
main();
intyy,mm,dd,
yy=2006;
mm=03;
dd=12
printf(“你好,今天是%d年%d月%d日”,yy,mm,dd);
4.编程,要求从键盘输入数据,使整型变量a=10,b=8;
字符型c1=’A’,c2=’a’;
实型变量x=3.1,y=64.54。
并按规定格式输出变量的值。
格式如下。
存入ex3-2.c文件,并编译、调试、运行。
__int___a=__10___b=____8
char_c1=__A,___c2=____a
float___x=_3.1,___y=64.54
5.c语言编程求ax2+bx+c=0并分析其结果。
存入ex3_2.c文件,并编译、调试、运行。
第三章逻辑运算和选择结构控制
掌握if语句的格式与应用,if语句的嵌套格式与应用,条件运算符的作用,Switch语句的格式与应用,Break、continue语句的格式与应用。
1.完成下面的程序,在空白处填入a,b,c,取a,b,c中最大者赋给max。
存入ex4_1.c文件,并编译、调试、运行。
A.if(a>
b&
&
a>
c)
B.
if(a>
b)
max=________
if(a>
c)
else
max=______
if(b>
else
max=______
else
if(b>
max=________
else
max=_________
2.输入a,b,c三个整数,要求将绝对值最大者打印输出。
存入ex4_2.c文件,并编译、调试、运行。
3.输入一个整数,判断该数的奇偶性。
(输出相应的标志even-偶数odd-奇数,请记住这两个单词)自已写出程序代码。
存入ex4_3.c文件,并编译、调试、运行。
4.给定一个正整数,判断它是否能同时被3、5、7整除。
存入ex4_4.c文件,并编译、调试、运行。
第四章循环控制
掌握循环结构的三种形式:
当型循环结构(while)、直到型循环结构(do_while)、次数型结构(for),以及三种形式的相互转换,掌握break语句、continue语句的格式、功能、作用。
1.
编程,键盘上输入10个数,求其平均值。
存入ex5_1.c文件,并编译、调试、运行。
2.
编程,输出1—100之间,其数的平方在150—200之间的第一个数,如找到,退出循环,输出该数的平方。
反之,继续查找。
存入ex5_2.c文件,并编译、调试、运行。
3.
编程,输入一正整数,按从低到高的顺序依次输出其各位数字的值,例如:
输入8546输出8
5
4
6。
存入ex5_3.c文件,并编译、调试、运行。
4.编程,从键盘上输入若干正整数,求其中最大数和最小数。
输入的数以0为中止标志。
存入ex5_4.c文件,并编译、调试、运行。
第五章数组
掌握一维数组和二位数组的定义、初始化、输入、输出方法;
掌握字符数组的定义、初始化,存放字符串的字符数组的定义、初始化、输入、输出方法,掌握常用字符串处理函数的格式、功能和使用方法。
1、编程,求2个3×
3矩阵对应元素之和,并存入矩阵C中,然后输出矩阵C。
存入ex6_1.c文件,并编译、调试、运行。
2、
编一个程序,输入单精度型一维数组a[10],计算并输出a数组中所有元素的平均值。
存入ex6_2.c文件,并编译、调试、运行。
3、编一个程序,输入一个字符串,将其中所有大写字母改为小写字母,而所有小写字母全部改为大写字母,然后输出。
存入ex6_3.c文件,并编译、调试、运行。
4、编一个程序,输入这50个学生的二科成绩,计算并输出每科成绩的平均分。
存入ex6_4.c文件,并编译、调试、运行。
第六章函数
掌握自定义函数的概念、定义格式、调用方法;
掌握函数的形式参数、实际参数和函数的返回值;
掌握函数程序设计的一般方法和应用。
掌握函数与数组之间的关系和操作,熟悉数组作为参数传递应该注意的问题;
函数的嵌套、递归调用方法和应用;
局部变量、全局变量的定义和使用;
常用系统函数的使用。
1、编程,计算10名学生1门课成绩的平均分。
(程序设计要求:
用自定义函数来实现,注意自定义函数的形式及参数之间的传递,用主函数来调用自定义函数实现功能。
),存入ex7_1.c文件,并编译、调试、运行。
2、编程,利用自定义函数编写程序,实现将一个十进制数转换成二进制数。
存入ex7_2.c文件,并编译、调试、运行。
3、编程,输入一个数组,利用自定义函数求数组的平均数(用数组做参数)。
存入ex7_3.c文件,并编译、调试、运行。
4、编程,自定义函数countc的功能是统计array数组中大写字母的个数,并返回大写字母的数目。
存入ex7_4.c文件,并编译、调试、运行。
5、编程,以下函数p的功能是用递归方法计算xX的n阶勒让德多项式的值。
已有调用语句p(n,x);
请编写p函数。
存入ex7_5.c文件,并编译、调试、运行。
递归公式如下:
第七章编译预处理
掌握宏定义的形式(带参数的宏定义、不带参数的宏定义);
1、编程,通过用带参的宏定义从3个数中找出最大值。
主函数完成数据输入、宏调用及数据输出。
存入ex8_1.c文件,并编译、调试、运行。
编一个头文件,将经常使用的数学函数、字符处理函数及圆周率等符号常量事先定义好。
以便以后调用。
存入headfile.h文件,存盘。
3、编一个程序,接收一行字符,根据具体需要设置编译条件,使之能将所有的字母全改为大写字母。
存入ex8_2.c文件,并编译、调试、运行。
第八章指针
掌握指针和指针变量,内存单元和地址、变量与地址、数组与地址的关系;
掌握指针变量的定义和初始化,指针变量的引用方式;
掌握取地址运算符与指针运算符;
掌握指向变量的指针变量的使用;
掌握指向数组的指针变量的使用;
掌握指向二维数组和字符数组指针变量的使用方法;
掌握指针数组的定义、指针数组元素的引用;
掌握多级指针的定义和应用。
1、
编程,已知p,q指向两个int型变量,写两个复合语句,分别交换p,q的值和p,q所指变量的值,每个复合语句中只可以定义一个变量。
存入ex9_1.c文件,并编译、调试、运行。
2、编程,已知p,q指向数组的两个元素,写赋值语句,使r指向p和q的中点。
例如,若p,q分别指向a[0]和a[2],则r指向a[1]。
存入ex9_2.c文件,并编译、调试、运行。
3、编程实现findmax函数将计算数组中的最大元素及其下标值和地址值,存入ex9_3.c文件,并编译、调试、运行。
4、编写一个函数s(a,n),其中a是一个一维整型数组,n是数组长度,通过指针求数组中的平均数。
存入ex9_4.c文件,并编译、调试、运行。
5、利用指针编写程序,求字符串的长度。
存入ex9_5.c文件,并编译、调试、运行。
6.编程,输入100个实数,利用指针求其中的最大值和平均值,存入ex9_6.c文件,并编译、调试、运行。
7.输入10个数,利用指针编写将其排序的程序。
存入ex9_7.c文件,并编译、调试、运行。
第九章结构体与共同体
掌握结构体类型及其变量的定义和初始化,结构体变量的应用;
掌握结构体数组的定义和初始化,结构体变量和数组的应用。
掌握指向结构体类型的指针,共用体类型变量的定义和引用;
熟练掌握链表的简单操作。
1.定义一个结构体变量,其成员包括学号,姓名,性别,总分。
通过键盘为其赋值,然后按照一定的格式输出。
(格式自定)存入ex10_1.c文件,并编译、调试、运行。
2.按照如下格式定义一个结构体,并按照如下格式为一个班级的学生输入信息(不包括总分),通过公式“总分=数学+英语+政治”计算每个同学的总分,并按照降序排序,最后将其输出。
存入ex10_2.c文件,并编译、调试、运行。
序号
姓名
数学
英语
政治
总分
num
Name
Math
engl
poli
total
长整型
字符串数组
实型
3.定义一个结构体数组,其成员包括序号,姓名,性别,出生日期,工资。
为该结构体数组赋值,并且将其按照关键字(工资)排成升序。
存入ex10_3.c文件,并编译、调试、运行。
4.设有N名考生,每个考生的数据包括考号、姓名、性别和成绩,编写一个程序,要求用指针求出成绩最高的考生,并且输出其全部信息。
存入ex10_4.c文件,并编译、调试、运行。
第十一章文件
掌握文件的打开和关闭;
精通文件的读写操作;
了解文件的定位操作及文件的检测函数;
掌握文件的应用。
1、编写一个程序,读取磁盘上的一个C语言程序文件,要求加上注解后再存放存盘上,可以使用另一个文件名字。
存入ex12_1.c文件,并编译、调试、运行。
2、编写一个程序,将文件old.txt从第10行起存放到new.txt中去。
存入ex12_2.c文件,并编译、调试、运行。
(old.txt自己定义)
3、编写一个程序,统计该old.txt文件中字符和非字符的个数。
存入ex12_3.c文件,并编译、调试、运行。
4、有一个整数文件,读取其中的数值,如果为奇数加一,如果为偶数,减一,存放到新的文件中去。
存入ex12_4.c文件,并编译、调试、运行。