《计算机软件基础2243》实验方案及大纲Word文档格式.docx
《《计算机软件基础2243》实验方案及大纲Word文档格式.docx》由会员分享,可在线阅读,更多相关《《计算机软件基础2243》实验方案及大纲Word文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
C的函数
利用循环编写还有一维数组和二维数组的C程序;
建立和运行一个主函数和其他用户定义的函数组成的C程序。
应用型实验
4
实验四
C的指针
编写一个主函数和另外两个函数的程序,一个事变量传递数据;
另一个用指针变量传递数据
5
实验五
编译预处理与
文件
编写与个编译预处理程序
编写一个文件系统的程序,实现从文件中输入数据,向文件输出结果。
上机地点:
J020402
上机时间:
9月2810月13日10月2010月2711月3
实验一顺序结构
一、实验目的
1、掌握在TC集成环境下编辑、编译、链接、运行C程序的全过程;
2、掌握基本数据类型及其使用规则;
3、重点熟悉C的输入输出方法。
二、实验环境
1、一台能正常启动的386以上个人计算机
2、安装有Turboc2软件
三、实验步骤
1、启动Turboc2,创建一个新的C程序
2、输入相应的代码。
3、保存程序
4、运行程序
实验1:
一个简单的的C程序。
main()
{
inta,b,sum;
a=123;
b=456;
sum=a+b;
/*求出a,b之和*/
printf(“sumis%d\n”,sum);
}
实验2:
数据类型的应用。
charc1,c2;
c1=97;
c2=98;
printf(“%c%c”,c1,c2);
printf(“%d,%d”,c1,c2);
实验3:
按格式要求输入/输出数据
#include"
stdio.h"
{
inta,b;
floatx,y;
charc1,c2;
scanf(“a=%d,b=%d”,&
a,&
b);
scanf(“%f,%e”,&
x,&
y);
scanf(“%c%c”,&
c1,&
c2);
printf(“a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%c\n”,a,b,x,y,c1,c2);
运行该程序,必须按如下方式在键盘上输入数据
a=3,b=7↙
8.5,71.82↙
aA↙
请同学们写出输出结果
实验4:
编写程序,把560分钟换算成用小时和分钟表示,然后进行输出。
intx,h,m;
scanf("
%d"
&
x);
h=x/60;
m=x%60;
printf("
%d分钟为%d小时%d分\n"
x,h,m);
四、思考题
1、在实际编写程序过程中,怎样确定变量的类型?
2、在printf函数中可以使用的各种格式指定符。
五、实验报告要求
认真填写试验报告,程序代码清单要完整,准确。
实验二选择与循环结构
熟悉和掌握选择与循环结构的c语言程序,利用单步调试分析if、switch、for、while及do-while的应用。
二、实验内容
1、在Turboc2中,利用不同形式的选择语句编写具有选择结构的c程序
2、利用while分析c程序
3、分析for循环程序
三、实验环境
四、实验原理与方法
选择语句是用于构造选择程序结构的语句,分别为有单分支和双分支和多分支,单分支是当条件成立时执行语句,不成立时不执行;
双分支是当条件成立时执行语句1,不成立时执行语句2;
多分支是由多个条件组成的,执行其中的一个分支。
循环结构是在一定条件下重复地执行一组语句的一种程序结构。
分别有三种:
for语句,while和do-while语句。
for语句中的表达式1可以是任何类型的,它主要是设置循环控制变量的初始值,表达式2决定循环是否继续执行,表达式3是每次循环后,由它控制循环变量的增值;
while循环是先判断条件后执行循环体;
do-while先执行循环体后判断条件。
五、实验步骤
实验1if语句的应用
{chara,b,c;
a=‘x’;
b=‘c’;
if((a=b)>
0)c=a;
printf(“%d\n”,c);
}
实验2
if-else的应用
{intx=1,y=2,z=3;
if(x=y+z)
printf(“22222”);
elseprintf(“55555”);
实验3while的应用
{intx=0,s=0;
while(!
x!
=0)
s+=++x;
printf(“%d\n”,s);
}
实验4do-while的应用
{intx=3;
do
{printf(“%d,”,x-=2);
}while(!
(--x));
实验5for的应用
{intn,i=100;
for(n=5;
n>
0;
n--)
printf(“%d,”,i);
}
六、思考题
1、分析if与if-else的执行过程
2、分析while与do-while的区别
3、分析循环的终止条件及执行了多少次
七、实验报告要求
实验三C的数组与函数
一、实验目的
1、熟悉和掌握利用数组处理多个数据。
2、熟悉和掌握C函数的定义和调用。
二、实验内容
1、编写程序代码,建立一个一维数组和二维数组;
2、编写程序代码,查找一维数组中的所有数的平均值和最大值和最小值。
3、定义和调用C函数,函数的形式参数分别简单变量和数组名。
四、实验步骤
建立一个一维数组和二维数组主要的代码如下:
{inti,j,a[10],b[4][4];
for(i=0;
i<
10;
i++)
a[i]=i;
=3;
for(j=0;
j<
j++)
b[i][j]=i;
=10;
printf(“%d”,a[i]);
{for(j=0;
printf(“%d”,b[i][j]);
printf(“\n”);
}}
查找一维数组中的所有数的平均值和最大值和最小值。
主要的代码如下:
{inta[10],i,s=0,max,min;
floatavg;
for(i=0;
scanf(“%d”,&
a[i]);
max=min=a[0];
{s=s+a[i];
if(max>
=a[i])max=a[i];
if(min<
=a[i])min=a[i];
avg=s/10.0;
printf(“avgis%fmaxis%dminis%d”avg,max,min);
定义和调用C函数,函数的形式参数分别简单变量和数组名(观察其结果)
floatadd1(floatx,floaty)
{floatz;
z=x+y;
return(z);
floatadd2(floata[])
z=a[0]+a[1];
main()
{floata,b,c,d,e[3];
scanf(“%f,%f”,&
e[0]=a;
e[1]=b;
c=add1(a,b);
d=add2(e);
printf(“cis%f\n”,c);
printf(“dis%f”,d);
五、思考题
1、考虑求5X5的距阵求平均值。
最小值,最大值?
2、思考数组中删除,插入元素该怎么办?
3、在实验三中,能否考虑用全局变量来进行值传递;
六、实验报告要求
实验四C指针
熟悉和掌握C指针变量。
1、编写一个主函数和另外两个函数的程序,一个事变量传递数据;
三、实验环境
四、实验步骤
1、编写一程序,含有一个主函数和另外两个子函数,子函数完成两个数的交换功能。
swap1(inta,intb)
{intc;
c=a;
a=b;
b=c;
swap2(int*p1,int*p2)
c=*p1;
*p1=*p2;
*p2=c;
{inta=3,b=5;
int*p=&
a,*q=&
b;
swap1(a,b);
printf(“%d%d”,a,b);
swap2(p,q);
2、编写程序。
将数组a的数据复制到数组b中并输出出来(要求用指针变量完成)。
主要的代码如下
inti,a[7]={23,24,15,3,64,21,5}
intb[7]}
int*p=a,*q=b;
7;
*q++=*p++;
printf(“%d”,b[i]);
1、在第一个程序中,Swap2函数交换能不能用,c=p1;
p1=p2;
p2=c;
表示?
不能,会出现什么样的结果,能,会出现什么样的结果?
六、实验报告要求
认真填写试验报告,步骤清单要完整,准确。
实验五编译预处理与文件
1、了解文件打开和关闭的概念及方法。
2、掌握文件以及缓冲文件系统、文件指针的概念;
学会使用文件打开、关闭、读、写、定位等文件操作函数。
1.阅读程序并修改程序;
2.编写程序。
宏的应用。
#include<
stdio.h>
#defineMIN(x,y)(x<
y)?
x:
y
{inti,j;
scanf(“%d,%d”,&
i,&
j);
printf(“%d\n”,MIN(i,j));
任务二:
把文件f1.txt中的内容复制到文件f2.txt中去。
运行下列程序并分析运行结果。
#include<
main()
{charc;
FILE*fp1,*fp2;
fp1=fopen("
f1.txt"
"
r"
);
fp2=fopen("
f2.txt"
"
w"
c=fgetc(fp1);
while(c!
=EOF)
{fputc(c,fp2);
fclose(fp1);
fclose(fp2);
1.文件在读写之前必须先打开,读写结束必须关闭吗?
为什么?
2.文件的操作方式有哪几种?
文件的可以按照哪几种方式进行读写?
附件2
例子:
实验报告册样式
实验项目
实验时间
暂时不填
实验地点
你们上实验的教室
指导教师
袁乖宁
实验课时
课程名称
计算机基础与程序设计
实验成绩
不填
实验目的:
实验环境:
实验注意事项:
实验步骤:
实验结论与数据:
实验心得:
评阅教师评语:
评阅教师:
评阅日期: