程序设计基础C实验大纲.docx
- 文档编号:26139284
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:17
- 大小:26.19KB
程序设计基础C实验大纲.docx
《程序设计基础C实验大纲.docx》由会员分享,可在线阅读,更多相关《程序设计基础C实验大纲.docx(17页珍藏版)》请在冰豆网上搜索。
程序设计基础C实验大纲
《程序设计基础(C)》实验大纲
一、实验目的
《程序设计基础(C)》是一门实践性很强的程序设计基础课,该课程对提高学生的逻辑分析、抽象思维、程序设计能力具有重要意义。
而上机实践则是学好本课程的十分重要的环节。
为此,认真上机实践,有利于进一步巩固和加深对本课程基本概念和基本知识的理解和掌握,同时,也为后续相关的课程学习打下了必备的技能基础。
上机时,主要完成源程序的编辑、编译、连接和运行。
上机过程将检查程序和算法是否正确、程序的逻辑是否正确、程序的执行顺序是否正确的过程称为调试过程。
上机的各个环节都有可能碰到不少问题,不会一次成功,应针对问题细心地查找原因,逐个解决。
这也是锻炼上机调试能力的好机会,碰到困难时切忌轻易放弃。
学习C程序设计最好的方法就是多上机,程序是调试出来的,不是“编”出来的。
二、实验要求
1.内容要求:
多文件系统的程序设计
输入、输出函数应用
循环程序设计
分支程序设计
数组的应用
函数的应用
文件操作
2.操作要求:
首先能够确定算法,在TC或VC环境编辑程序,通过调试产生可执行文件,并对程序的运行效果进行测试。
三、实验课时
实验课共_16__学时。
四、实验环境
在PC机中应用TC或VisualC++6.0集成开发环境
五、实验内容(共_8__次)
次号
实验内容概要
1
实验一:
C程序的构成
2
实验二:
输入、输出函数应用
3
实验三:
循环程序设计
4
实验四:
分支程序设计
5
实验五:
数组的应用
6
实验六:
函数的应用
(1)
7
实验七:
函数的应用
(2)
8
实验八:
文件操作
说明:
以下为各个实验简介以及目的、任务、要求的描述:
实验一C程序的构成
1.实验的基本任务
(1)TurboC或VisualC++6.0集成编译环境
(2)了解C程序的结构
(3)掌握C程序设计中的保留字与标识符
(4)掌握程序设计中的一般语法规则
2.实验的基本目的
学会顺序程序设计的思想;进一步熟悉TurboC集成编译环境的使用,达到熟练使用的目的;熟练掌握各种数据类型的常用输入输出格式,并学会使用输入输出函数;学会使用表达式。
3.实验的基本仪器设备和耗材
计算机,TC2.0或TC3.0或VisualC++6.0
4.任务要求的描述
【实验1-1】编辑下列程序并运行
1)输入下面的程序
#include
intmain()
{
printf("欢迎学习C语言程序设计!
\n");
return0;
}
2)仔细观察屏幕的输入程序,检查程序有无错误。
3).对该程序进行编译,查看编译输出窗口,检查是否有错误,有错误需要改正错误。
无错误就可以运行程序。
4)把程序改为:
#include
intMain()
{
printf("欢迎学习C语言程序设计!
\n");
return0;
}
在C程序设计中你能得出什么结论?
5)把程序改为:
#include
intmain()
{
printf("欢迎学习C语言程序设计!
\n")
return0;
}
在C程序设计中你能得出什么结论?
6)把程序改为:
#include
intmain()
{
intfor=1;
printf("欢迎学习C语言程序设计!
\n")
return0;
}
在C程序设计中你能得出什么结论?
【实验1-2】
1.编辑、调试以下程序。
步骤1:
在VisualC++环境下新建文件,单击菜单“开始→程序→MicrosoftVisualC++6.0→MicrosoftVisualC++6.0→文件→新建→文件→C++SourseFile”,输入文件名ex1-1.c,程序代码如下:
#include
intadd(intx,inty)
{
intz;
z=x+y;
returnz;
}
intmain()
{
intadd(int,int);/*函数的说明,告诉系统在主函数中要调用add函数*/
inta,b,c;/*变量的定义*/
scanf("%d%d",&a,&b);
c=add(a,b);/*函数调用*/
printf("%d+%d=%d\n",a,b,c);
/*调用系统输出函数printf,%d为格式控制符,依次用后面的变量值填充,以整数形式输出*/
}
回答下列问题:
1)文件ex1-1.c由几个函数构成?
2)调用了哪几个系统函数?
3)此程序中用到了哪几个保留字、哪几个用户自定义标识符?
步骤3:
编译并运行程序,程序运行时输入两个整数:
20、40,观察程序运行的结果。
【实验1-3】
调试课本程序1.4,并回答课本中提出的相关问题。
三【实验过程】
四【实验小结】
实验二输入输出程序设计
1.实验的基本任务
(1)数据类型的输入输出格式
(2)输入输出函数
(3)表达式
(4)顺序结构程序设计
2.实验的基本目的
学会顺序程序设计的思想;进一步熟悉TurboC集成编译环境的使用,达到熟练使用的目的;熟练掌握各种数据类型的常用输入输出格式,并学会使用输入输出函数;学会使用表达式。
3.实验的基本仪器设备和耗材
计算机,TC2.0或TC3.0或VisualC++6.0
4.任务要求的描述
【实验1-1】
输入下列程序:
#include
intmain()
{
intx,y,z;
scanf("%d%d",&x,&y);
z=x*y;
printf("%d*%d=%d\n",x,y,z);
return1;
}
1)程序编译后,运行程序,如输入2030(回车),观察输出结果。
2)程序编译后,运行程序,如输入20,30(回车),观察输出结果。
3)程序改为:
#include
intmain()
{
intx,y,z;
scanf("%d,%d",&x,&y);
z=x*y;
printf("%d*%d=%d\n",x,y,z);
return1;
}
程序编译后,运行程序,如输入2030(回车),观察输出结果。
4)程序编译后,运行程序,如输入20,30(回车),观察输出结果。
【实验2-2】设计一个程序,定义两个字符数组,分别用于存放你的姓名与你的出生地。
例如,你姓名为张美丽,出生地为山东济南,在程序运行时输入:
张美丽
山东济南
程序最后输出的结果如下:
我叫张美丽,浙江大学的学生,来自山东济南
【实验3-3】求4和6的和,并在显示器上输出。
然后修改程序从键盘上任意输入2个整数,并将二者的和输出。
实验三循环结构程序设计
1.实验的基本任务
(1)while、do-while
(2)for语句
(3)循环结构程序设计方法
(4)选择结构与循环结构的嵌套
2.实验的基本目的
学会使用while、do-while、for语句;熟练掌握循环结构程序设计方法;掌握选择结构与循环结构的嵌套。
3.实验的基本仪器设备和耗材
计算机,TC2.0或TC3.0或VisualC6.0
4.任务要求的描述
【实验3-1】
辑源程序下列程序代码,编译后运行程序。
#include
intmain()
{
inti,sum=0;
i=1;
while(i<=100)
{
sum=sum+i;
i++;
}
printf("sum=%d\n",sum);
return0;
}
1)上例中循环体大括号省略,程序运行时会出现什么情况?
为什么?
2)如果在while(i<=100)后加“;”号,请思考程序运行的结果是什么?
3)模仿上述程序,求:
100+102+104+….+398+400的和。
【实验3-2】
调试下列程序:
#include
intmain()
{
intn=1;
doubles=0;
while(s<=3)
{
s+=1.0/n;
n++;
}
printf("s=%lfn=%d\n",s,n-1);
return0;
}
1)模仿例上述程序,求s=1-1/2+1/3-1/4+……的值,直到误差<0.00001。
【实验3-3】
模仿课本例3.7,从键盘输入一个整数,求各个位数之和。
例如:
输入531输出9(1+3+5)。
【实验3-4】
求s=1/1!
+1/2!
+1/3!
+1/4!
+…,要求误差<0.00001,要求用for语句实现。
三【实验过程】
四【实验小结】
实验四选择结构程序设计
1.实验的基本任务
(1)关系运算和逻辑运算
(2)if语句和switch语句
(3)结构化程序设计方法
2.实验的基本目的
了解C语言的关系运算和逻辑运算;学会使用if语句和switch语句;熟练掌握选择结构程序设计方法。
3.实验的基本仪器设备和耗材
计算机,TC2.0或TC3.0或VisualC6.0
4.任务要求的描述
【实验4-1】
调试下列程序:
#include
intmain()
{
inti=1,cj=0,yx=0;
floatsum=0,avg=0;
/*变量i用于循环8门课程,cj用于输入某门课成绩,yx用于统计优秀课程数,sum
用于计算总分,avg用于计算平均分*/
for(i=1;i<=8;i++)
{
printf("请输入第%d门课成绩:
",i);
scanf("%d",&cj);
if(cj>=85)
{
printf("\t该课程成绩优秀!
\n");
yx++;
printf("\t累计%d门课程成绩优秀!
\n",yx);
}
sum+=cj;
}
avg=sum/8;
printf("该学生8门课程总分:
%0.1f平均分:
%0.1f\n",sum,avg);
return0;
}
1)上例若把if(cj>=85)后的“{}”去掉,程序执行的结果会怎样?
2)变量avg是否可以省略?
3)输入若干整数,把正数相加,当输入0时结束,最后输出正数的和。
【实验4-2】
从键盘输入10个整数,把所有的正数相加以及所有的负数相加,最后输出所有正数的和以及所有负数的和。
【实验4-3】
从键盘输入x,计算下列分段函数的值。
【实验4-4】编写程序:
输入一行字符,分别统计大小写字母、数字字符、空格及其他字符的个数。
【实验4-5】
编写一个程序,由键盘输入三个整数作为三角形的三条边,判断是否能构成一个三角形;如能构成一个三角形,则判断是等边三角形、等腰三角形、直角三角形还是其他一般的三角形。
【实验4-6】
从键盘输入学生的百分制成绩,要求输出相应的等级,等级的划分为:
90~100为优、80~89为良、70~79为中、60~69为及格、0~59为不及格,可用switch语句实现。
三【实验过程】
四【实验小结】
实验五数组
1.实验的基本任务
(1)一维数组和二维数组的定义、赋值和初始化
(2)字符数组
(3)数组相关的各种算法
2.实验的基本目的
掌握一维数组和二维数组的定义、赋值和初始化的方法;掌握字符数组的使用;熟练掌握与数组相关的各种算法。
3.实验的基本仪器设备和耗材
计算机,TC2.0或TC3.0或VisualC6.0
4.任务要求的描述
【实验5-1】
定义一个含10个元素的整型数组a,数组的元素及所查找的数据x从键盘输入,数组中没有相同的元素,请设计一个程序,用顺序的方法查找此数。
【实验5-2】采用二分法,对按降序排列的字符数组charstr[SIZE]="womihgedca"查找数组中的某一字符。
【实验5-3】定义一个数组a[SIZE],数组元素无序,要求在数组中插入一个数num,数组的个数n与数组的元素、要插入的数据num及插入的位置x都从键盘输入,最后输出数组。
【实验5-4】定义一个数组a[SIZE],假设数组元素为有序,从小到大排序,要求在数组中插入一个数num,数组的元素个数n与数组的元素、插入的数据都从键盘输入,要求数组插入数据后仍然有序,最后输出数组。
【实验5-5】将例5.12中的数组按照升序排序,请改写程序。
三【实验过程】
四【实验小结】
实验六函数
(1)
1.实验的基本任务
(1)C语言函数的定义、声明以及调用
(2)参数传递方式
(3)数组作为函数参数
2.实验的基本目的
掌握C语言函数的定义、声明以及函数的调用方法;了解主调函数和被调函数之间的参数传递方式;熟练掌握数组作为函数参数的用法。
3.实验的基本仪器设备和耗材
计算机,TC2.0或TC3.0或VisualC6.0
【实验6-1】
求y=logax的值,a、x的值从键盘输入。
【实验6-2】
编写一程序用于猜数游戏,程序中有三个函数:
第一个函数是产生一个随机整数函数;第二个函数用于判断此随机数,能提示我们猜大了还是猜小了,或是给出恭喜猜对了的提示;第三个是main函数,在main函数中游戏者根据键盘输入1或0可以选择继续游戏还是终止游戏。
【实验6-3】
自定义一函数strcat,连接两个字符串,在main函数中读入两个字符串,调用此函数,输出连接后的字符串。
【实验6-4】
编写4个函数,其一为输入函数voidinput(inta[],intn),其二为删除函数intdel(inta[],intx,intn),其三为输出函数voidprint(inta[],intn),其四为main函数,main函数分别调用函数input、del和print,a为整型数组,n为数组元素个数,del返回元素的个数。
【实验6-5】
描述一个整型数组a,要完成下列菜单中的功能。
程序运行时首先显示菜单,然后进行各菜单项的选择并实现其功能。
*****************数组的操作*******************
0.输入数组元素
1.显示数组全部元素
2.查找数组元素
3.删除数组元素
4.增加数组元素
5.从小到大排序数组
6.快速查找数组元素
7.退出
***********************************************
要实现元素的输入、显示、查找、插入、删除、排序、选择等功能,请编写这一系列的函数。
三【实验过程】
四【实验小结】
实验七函数
(2)
2.实验的基本任务
(1)掌握C语言中函数的嵌套调用
(2)掌握函数的递归调用
2.实验的基本目的
掌握C语言函数的定义、了解主调函数和被调函数之间的参数传递方式,掌握函数的嵌套调用与递归调用。
3.实验的基本仪器设备和耗材
计算机,TC2.0或TC3.0或VisualC6.0
4.任务要求的描述
【实验7-1】
求函数
在[1,3]区间的定积分。
【实验7-2】
用递归的方法求0+2+4+6+8+…+98+100的和。
【实验7-3】上机调试课本程序7.7。
【实验7-4】编写一个程序,在文件ex1.c中定义一个描述人的结构体类型及作为外部变量的结构体数组、结构体数组的输入函数,在文件ex2.c中定义一个求结构体数组中最大年龄的长者的函数,在文件ex0.c中定义一个main函数,调用输入函数、求年龄最大者函数,并在main函数中输出结果。
三【实验过程】
四【实验小结】
实验八文件操作
1.实验的基本任务
(1)文件和文件指针的概念
(2)文件打开、关闭、读写等
2.实验的基本目的
掌握C语言文件和文件指针的概念;学会对文件的基本操作,包括文件打开、关闭、读写等;掌握有关文件操作的函数。
3.实验的基本仪器设备和耗材
计算机,TC2.0或TC3.0或VisualC6.0
4.任务要求的描述
【实验8-1】
将键盘上输入的一个字符串(以“@”作为结束字符),以ASCII码形式存储到C盘VC目录下一个磁盘文件k2.txt中。
【实验8-2】有一文本文件l1.txt,请编写一个程序将文件中的英文字母及数字字符显示在屏幕上。
【实验8-3】把文本文件l1.txt中的数字字符复制到文本文件l2.txt中。
【实验8-4】将x从0到360度的sin(x)值写入到文件l6.txt中,并将大于0的值显示在屏幕上。
【实验8-5】文本文件k10.txt中含有大小写字母,试把文本文件中的小写字母转化为大写字母。
三【实验过程】
四【实验小结】
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 基础 实验 大纲
![提示](https://static.bdocx.com/images/bang_tan.gif)