程序设计语言C实验卡.docx
《程序设计语言C实验卡.docx》由会员分享,可在线阅读,更多相关《程序设计语言C实验卡.docx(10页珍藏版)》请在冰豆网上搜索。
程序设计语言C实验卡
计算机课程实验卡
课程名称
程序设计语言(C)
班级
顺序号
1(3月4日)
实验名称
实验一熟悉C语言上机环境
实验目的
1.熟悉C语言的编辑、编译及运行程序的环境;
2.了解上机环境中的常用命令和操作;
3.运行一个C程序,了解基本的程序编辑、调试方法。
实验内容
1.复习第一章部分课件;
2.使用DOS操作命令查看TC目录下的文件。
学习建立个人的C源程序文件子目录。
3.在TC集成开发环境下,输入教材P8【例1-1】并进行编译和运行,观察C程序的书写格式,学会在屏幕上查看运行结果并练习文件的保存。
4.输入教材第一章P8【例1-2】、P17【例2-1】、P37【例2-5】,学会在程序运行中如何给变量输入数据,同时体会转义字符“\n”的用法,并练习文件的保存。
5.输入教材P43【例3-2】,掌握大写字母与小写字母之间的转换算法并练习文件的保存。
6.编程题:
模仿【例1-1】编写“教材P13三、编程题”。
实施情况
备注
计算机课程实验卡
课程名称
程序设计语言(C)
班级
顺序号
2
实验名称
实验二数据类型与表达式
实验目的
1.掌握C语言的基本数据类型,熟悉定义变量及对变量赋值的方法;
2.学会使用C语言的运算符和表达式;
3.进一步熟悉TC环境,即熟悉C语言的编辑、编译和运行过程。
实验内容
1.复习第一章课件并运行其中的例子;
2.输入并运行下列程序。
程序1:
main()
{inta=97,b=98;floatx=54.234,y=-45.567;
charc=’a’;
printf(“%d,%4d\n”,a,b);
printf(“%f,%6.2f\n”,x,y);
printf(“%c\n”,c);}
分析运行结果。
若想输出a,b变量的ASCII字符,应如何处理?
若将char语句改为char=“a”;结果会如何?
程序2:
main()
{inta=10;
a+=a;printf(“%d”,a);
a/=4;printf(“\t%d”,a);
a+=a*=2;printf(“\t%d”,a);
a=a++;printf(“\t%d”,a);
a=--a;printf(“\t%d\n”,a);
分析其运行结果。
若将程序分别作以下改动并运行:
⑴将第10行改为a=++a;第12行改为a=a--;结果会如何?
⑵将printf函数中凡有“\t”的地方,换成“\n”或“,”,结果会如何?
⑶将第5行改为printf(“%d%d”,a);结果会如何?
3.有两个整型变量a和b,其值可由键盘任意输入(提示:
用scanf函数),分别计算它们的和、差、积、商及a、b相乘的绝对值的平方根(此问选作)。
实施情况
备注
计算机课程实验卡
课程名称
程序设计语言(C)
班级
顺序号
3
实验名称
实验三顺序结构程序设计
实验目的
1.掌握赋值语句的使用;
2.熟练掌握输出函数printf、输入函数scanf的几种常用的控制格式的用法;
3.掌握字符输入函数getchar、输出函数putchar的用法
4.掌握最简单的程序设计方法—顺序结构程序设计
实验内容
1.复习第二章课件;
2.编程实现从键盘给变量a,b分别输入整数,要求每个变量只能接受两位数,例如:
32和46,求两数的乘积并显示出32*46=1472。
输出时要求a,b占字符宽度3位,乘积占用5位显示。
3.编程实现用getchar函数从键盘得到一个字符,并用putchar函数输出这个字符(参考教材P32【例2-2】、【例2-3】)。
4.设计一个程序,输入正五边形的边长的长度a,按公式
计算该五边形外接圆的半径,结果保留两位小数。
(验证:
如a=1时,R=0.85;a=2时,R=0.43)
5.设计一程序,输入空间中两点的坐标x1,y1,z1和x2,y2,z2,计算两点之间的距离。
6.鸡兔同笼问题。
已知鸡、兔总头数为h,总脚数为f,求鸡兔各多少只?
(验证:
如h=12,f=40,则cock=4,rabbit=8;如h=16,f=40,则cock=12,rabbit=4)
实施情况
备注
计算机课程实验卡
课程名称
程序设计语言(C)
班级
顺序号
4
实验名称
实验四选择结构程序设计
实验目的
1.熟练掌握if语句;
2.掌握switch语句;
3.学会使用选择结构解决实际问题。
实验内容
1.复习第三章课件;
2.练习、读懂第三章P44【例3-3】、P45【例3-4】、P46【例3-5】、P48【例3-6】;
3.编写程序输入四个整数,要求按由小到大(或由大到小)顺序输出;
4.由键盘输入三个整数分别赋给变量a、b、c,编写程序输出其中绝对值最大(或最小)的数;
5.模仿P45【例3-4】写程序,输入x,输出y值;
3*x+5(x>0)
y=0(x=0)
3*x-5(x<0)
6.模仿P48【例3-6】,给出百分制成绩,要求输出成绩等级A、B、C、D、E。
90分以上为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。
7.编写程序输入一整数,将其值按大于10,10~99,100~999,1000以上分类显示。
例如:
输入782时,显示782是100~999之间的数。
8.输入一个字符,判别它是否大写字母,如果是,将它转换成小写字母;如果不是,不转换。
然后输出最后得到的字符。
实施情况
备注
计算机课程实验卡
课程名称
程序设计语言(C)
班级
顺序号
5
实验名称
实验五循环结构程序设计
实验目的
1.熟练掌握while语句、do-while语句和for语句;
2.能够用这三种循环结构实现穷举、迭代等常用算法。
实验内容
1.复习第四章课件;
2.教材P62三、编程题3;
(验证:
如n=2,结果1.833333;如n=5,结果11.450000)
3.编写程序求出满足不等式1+2+3+…+n<500的最大n值及总和;
(运行结果:
n=31,sum=496)
4.编写程序,求1-3+5-7+9……-99+101的值;
(运行结果:
51.000000)
5.求
的值。
(请分别用while、dowhile和for语句来实现,运行结果:
47976.00)
实施情况
备注
计算机课程实验卡
课程名称
程序设计语言(C)
班级
顺序号
6
实验名称
实验六综合练习
实验目的
结合前四章内容,掌握用顺序结构、选择结构、循环结构编写、设计程序,解决实际问题。
实验内容
1.复习第四章、第四章(综合举例)课件;
2.教材P62三、编程题1、2、5;
3.编程实现求数列
…的所有大于等于0.000001的数据项之和,显示输出计算结果(运行结果:
s=2.999999);
4.把100~150之间的不能被3整除的数输出;
5.计算公式t=1-1/2-1/3……-1/m的值。
例如:
若输入5,则应输出-0.283333;
6.编程实现1~500之间的满足条件的解。
“除以3余1,除以5余2,除以7余3”。
(中国剩余定理:
“有物不知几何,三三数余一,五五数余二,七七数余三,问:
物有几何?
”)(运行结果:
52、157、262、367、472);
7.打印“九九乘法表”。
实施情况
备注
计算机课程实验卡
课程名称
程序设计语言(C)
班级
顺序号
7
实验名称
实验七一维数组的使用
实验目的
1.理解一维数组的定义、类型、数组元素和下标的概念;
2.掌握一维数组的声明、初始化和数组元素访问的方法;
3.能够运用一维数组解决实际问题。
实验内容
1.复习第五章课件;
2.练习、读懂教材P66【例4-1】、【例4-2】,P67【例4-3】(冒泡法);
3.编写一个程序,计算若干学生的某门功课的平均成绩,找出最高分和最低分;
4.排序问题:
自学、参阅辅助教材(绿皮书)P137“第7章排序及查找算法及其实现”重点掌握选择法排序、冒泡法排序、插入法排序的思想。
⑴P139“7.2冒泡排序法的设计及其实现”。
编写程序,对n个整数用冒泡法排序(从小到大或从大到小);
⑵P141“7.3选择排序法的设计及其实现”。
编写程序,对n个整数用选择法排序(从小到大或从大到小);
⑶P143“7.4插入排序法的设计及其实现”。
利用数组编程实现删除、插入的算法,要求完成:
●编写程序删除指定的一个数;
●编写程序插入指定的数,插入后数组仍然有序。
5.查找问题:
掌握查找的常用算法(顺序查找、折半查找)。
P150~P154“7.7、7.8、7.9”。
编写程序在数组中查找一个数。
要求:
⑴若有该数,则输出该数,否则输出未找到的信息;
⑵用顺序查找实现;
⑶用折半查找实现。
实施情况
备注
计算机课程实验卡
课程名称
程序设计语言(C)
班级
顺序号
8
实验名称
实验八二维数组的使用
实验目的
1.理解二维数组及多维数组的概念;
2.掌握二维数组及多维数组的声明、初始化和数组元素访问的一般方法;
3.能够运用二维数组解决实际问题。
实验内容
1.复习第五章课件;
2.练习、读懂教材P71【例4-4】、P72【例4-5】;
3.打印杨辉三角形(要求打印10行);
4.求一个3×3的整型矩阵两对角线元素之和(参阅P71【例4-4】);
5.两个矩阵相加减,并输出结果;
6.求二维数组中最大元素值(或最小元素值)及其行列号;
7.将二维数组行列元素互换,存到另一个数组中;
8.输入三个学生、五门课程的成绩,分别存放在3×6矩阵的前五列上,计算每个学生的平均成绩后,存放在该数组最后一列的对应行上。
实施情况
备注
计算机课程实验卡
课程名称
程序设计语言(C)
班级
顺序号
9
实验名称
实验九字符数组与字符函数
实验目的
1.理解和掌握字符型数组与其他数组的区别及特点;
2.掌握字符型数组和字符串函数的使用方法。
实验内容
1.复习第五章课件。
2.编写一个程序,将字符数组s2中的全部字符拷贝到字符数组s1中,不能使用strcpy函数。
拷贝时,'\0'也要拷贝过去。
(代码提示:
for(i=0;i<=strlen(s2);i++)s1[i]=s2[i];)
3.编一程序,求字符串的长度,不能使用strlen函数。
4.编一程序,将两个字符串连接起来,不能使用strcat函数。
5.把输入的字符串逆序排列,如输入ABCDE,输出为EDCBA。
6.对长度为7个的字符串,除首尾字符外,将其余5个字符按ASCII码升序排序。
如:
BdsinAD,排序结果:
BAdinsD。
(演示:
用选择法或冒泡法)。
选作:
7.判断m是否素数?
(算法见第四章(综合举例).ppt课件)
扩展题:
求100~120间的全部素数。
(运行结果:
101103107109113)
实施情况
备注