实验七 数组应用
一、 实验目的及要求
1.掌握一维数组和二维数组的定义、赋值和输入输出的方法;
2.掌握字符数组和字符串函数的使用;
3.掌握与数组有关的常用算法。
二、实验内容及步骤
1.运行下面的C程序,根据运行结果,可以从中得出什么结论?
main()
{ int num[5]={1,2,3,4,5};
int i i;
for(i=0;i<=5;i++)
printf("%d",num[i]);
}
1 1 1 1 2 1 1 3 3 1 1 4 6 4 11 5 10 10 5
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
(a) 杨辉三角
的值从键盘输入,并且
小于15。
3.分析并运行下面程序,记录输出结果,考虑为什么?
#include
main()
{ char s1[ ]= "morning";
char s2[10]= "morning";
int a1[]={1,2,3,4,5};
int a2[5]={1,2,3,4,5};
printf("%d,%d\n",strlen(s1),sizeof(s1));
printf("%d,%d\n",strlen(s2),sizeof(s2));
printf("%d,%d\n",siezeof(a1),sizeof(a2));
}
回答问题:
(1)数组s1、s2、a1、a2的长度(指数组元素的个数)分别是多少?它们的存储长度分别是多少?
(2)字符数组s1、s2中存放的字符序列为字符串,那么s1、s2的串长各是多少?
4.找出一个二维数组的“鞍点”,即该位置上的元素在该行上最大,在该列上最小,也可能没有鞍点。要求应当至少准备两组测试数据:
A.二维数组有鞍点9
A.二维数组有鞍点
9
80
205
40
90
-60
96
1
210
-3
101
89
B.二维数组没有鞍点
9
80
205
40
90
-60
196
1
210
-3
101
89
45
54
156
7
5.输入一串字符,统计其中空格的个数(选做题)。