C语言程序设计实验实验指导书及答案 下载本文

常熟理工学院 电气与自动化工程学院 《C语言程序设计》实验指导书

实验四 程序控制结构(循环)

班级

学号

姓名

成绩

项目1:使用循环结构实现重复处理 【项目说明】

从键盘输入一个班的成绩,把百分制转换成等级制。将百分制成绩(用score表示)除以10之后再取整,一定得到0到10之间的数。9、10对应’a’,8对应‘b‘,??,5、4、3、2、1、0对应’e’既不及格。要求分别使用三种循环结构实现。该项目中,假设班级人数不固定,规定输入若干0至100的成绩,如果成绩不在此范围,则表示结束。该项目中,同时要使用switch语句实现多分支选择结构。 【项目目的】

(1)掌握用while语句和do…while语句实现循环的方法。 (2)掌握用for语句实现循环的方法。 (3)掌握三种语句的特点和应用技巧。

(4)掌握用break语句和continue语句改变循环状态的方法 。 【项目内容】

1、用while语句实现的程序代码:

2、用do…while和break语句实现的程序代码:

10 《C语言程序设计》实验指导书 常熟理工学院 电气与自动化工程学院3、用do…while和continue语句实现的程序代码:

4、用for语句实现的程序代码:

项目2.(选做) 求

10

(程序代码和运行结果可写在指导书背面) ?n!(即求1!?2!?3!???10!)

n?110常熟理工学院 电气与自动化工程学院 《C语言程序设计》实验指导书

实验五 数组

班级

学号

姓名

成绩

项目1. 冒泡排序法 【项目说明】

输入10个数,用“冒泡法”对10个数排序(由小到大)。冒泡法的基本思想:通过相邻两个数之间的比较和交换,使(数值)较小的数逐渐从底部移向顶部,较大的数逐渐从顶部移向底部。就像水底的气泡一样逐渐向上冒,故而得名。 【项目目的】

(1)掌握冒泡排序算法的编程。 (2)掌握与数组有关的算法。 程序代码:

运行结果:

项目2. 字符统计 【项目说明】

有一篇文章,共有3行文字,每行80个字符。要求分别统计出其中英文字母和数字的个数。 【项目目的】

(1)掌握键盘输入字符串方法。 (2)掌握二维数组的处理方法。

12 《C语言程序设计》实验指导书 常熟理工学院 电气与自动化工程学院【技术要点】

(1)3行文字可定义一个二维字符数组来表示。 (2)使用gets( ) 函数对字符串进行输入。 程序代码:

#include int main()

{int i,j,upp,low,dig,spa,oth; char text[3][80];

upp=low=dig=spa=oth=0; for (i=0;i<3;i++)

{ printf(\ gets(text[i]);

for (j=0;j<80 && text[i][j]!='\\0';j++) {if (text[i][j]>='A'&& text[i][j]<='Z')

upp++;

else if (text[i][j]>='a' && text[i][j]<='z') low++;

else if (text[i][j]>='0' && text[i][j]<='9') dig++;

else if (text[i][j]==' ')

else }

printf(\ printf(\ printf(\ : %d\\n\ printf(\ : %d\\n\ printf(\ : %d\\n\ return 0; }

oth++; }

spa++;

运行结果:

项目3.(选做)

在二维数组中,若某一位置上的元素在该行中最大,而在该列中最小,则该元素即为该二维数组的一个鞍点。要求从键盘上输入一个二维数组,当鞍点存在时,把鞍点找出来。 (程序代码和运行结果可写在指导书背面)

12