C程序设计实验指导书 - 2014版 下载本文

实验五 数组

#include void main() { int i,j,min; float temp,ave = 0.0; float a[11]; printf(\输入评委所打的分数:\\n\for(i = 1;i <= 10;i++) scanf(\ for(i = 1;i <= 9;i ++) { min = i; for(j = i+1;j <= 10;j ++) if(a[min] > a[j]) min = j; temp = a[i]; */ } a[i] = a[min]; 程序流程图 a[min] = temp; } for(i = 2;i <= 9;i ++) /*注意i值的变化范围 ave = ave + a[i]; printf(\选手所得最后分数:%6.1f\printf(\

【思考】你会用我们所学的冒泡法排序来实现该题吗?试试看! 【例4】求矩阵下三角形元素之和。 #include #define N 5 void main() { int i,j,sum=0; int a[N][N]={0}; printf(\5 data:\\n\ for(i=0;i

31

实验五 数组

{ for(j=0;j

【思考】操作符&用以求一个变量的地址,这在函数scanf()中已经使用过了。现在,请你设计一个程序,用来返回一个m*n的二维数组各元素的地址,并由此说明二维数组中各元素是按什么顺序存诸的。

【例5】下面程序的功能是输入一串字符,计算其中空格的个数。运行并分析该程序,然后请你在此题的基础上实现教材P153习题7.10。 #include /*exercise 7.10*/ #include void main( ) { char c[30]; int i,spa=0; gets(c); for(i=0;c[i]!='\\0';i++) if(c[i]==' ') spa=spa+1;

printf(\空格数为%d \\n\}

32 实验五 数组

编程作业

下面的作业均要求画出程序流程图和写出源程序代码,并在电脑上运行通过。

1. 编写一个程序,定义一个含有30个整数的数组,一次赋予从2开始的奇数,然后将按顺序每5个的平均值放在另一个数组中,并按每行3个输出结果。

2.有15个数存放在一个数组中,请先用一种排序方法(选择法或者冒泡法)进行排序(升序或者降序),然后输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。如果该数不在数组中,则输出“无此数”。然后,将该数按照原来的排序规律插入到该数组中,并将新的数组输出。15个数用赋初值的方法在程序中给出。要找的数用scanf函数输入。

33

实验五 数组

3.下面是一段密文:

Asf Glmt Cfv Nvm Wlf Mvmt Xsvmt Dvr Yrzm Xsvmt Tzl Hslf! 请你将该段密文破解,并输出。

加密规律为:英文第1个字母变成第26个字母,第i个字母变成第(26-i+1)个字母,非字母字符不变。

34