Chap7数组 7.1投票情况统计 7.2找出矩阵中最大值所在的位置 7.3判断回文
Chap 7 数 组 7.1 投票情况统计 7.2 找出矩阵中最大值所在的位置 7.3 判断回文
本章要点 什么是数组?为什么要使用数组?如何定义数组? 如何引用数组元素? 二维数组的元素在内存中按什么方式存放? 什么是字符串?字符串结束符的作用是什么? 如何实现字符串的存储和操作,包括字符串的输 入和输出? 怎样理解C语言将字符串作为一个特殊的一维字符 数组?
本章要点 ◼ 什么是数组? 为什么要使用数组? 如何定义数组? ◼ 如何引用数组元素? ◼ 二维数组的元素在内存中按什么方式存放? ◼ 什么是字符串? 字符串结束符的作用是什么? ◼ 如何实现字符串的存储和操作,包括字符串的输 入和输出? ◼ 怎样理解C语言将字符串作为一个特殊的一维字符 数组?
7.1投票情况统计 例71:调查电视节目欢迎程度。某电视台要进行 次对该台8个栏目(设相应栏目编号为18)的受 欢迎情况,共调査了1000位观众,现要求编写程 序,输入每一位观众的投票,每位观众只能选择 个最喜欢的栏目投票,统计输出各栏目的得票 情况。 7.1.1程序解析 7.12一维数组的定义和引用 7.13一维数组的初始化 7.14使用一维数组编程
例7-1:调查电视节目欢迎程度。某电视台要进行一 次对该台8个栏目(设相应栏目编号为1~8)的受 欢迎情况,共调查了1000位观众,现要求编写程 序,输入每一位观众的投票,每位观众只能选择 一个最喜欢的栏目投票,统计输出各栏目的得票 情况。 7.1.1 程序解析 7.1.2 一维数组的定义和引用 7.1.3 一维数组的初始化 7.1.4 使用一维数组编程 7.1 投票情况统计
if include<stdio. h: int main( void 7.1.1程序解析一排序 int count [9; 设立数 L/m=, int i, response, input your response: 3 for(=1;i<=8;i+t) nput your response: 6 count I= 0 /* Ei input your response: 9 for(i=1; i<= 1000; i ++)t this is a bad response: 9 printf( input your respo input your response: 8 scanf( %d", &response if(response< 1 respo printf( this is a bad re result. else 12 count[response]++;20 34 printf( result: In") for(=1;i<=8;i+t) printf("%4d%din", i, count[] eturn 0:
7.1.1 程序解析-排序 # include<stdio.h> int main( void ) { int count[9]; /* 设立数组,栏目编号对应数组下标 */ int i,response; for(i = 1;i <= 8;i++) count[i] = 0; /* 各栏目计数器清0 */ for( i = 1;i <= 1000;i++) {/* 调试时可把1000改小,如10 */ printf("input your response: "); /* 输入提示 */ scanf("%d",&response); if(response < 1 || response > 8) /* 检查投票是否有效*/ printf("this is a bad response: %d\n",response); else count[response]++; /* 对应栏目得票加1 */ } printf("result:\n"); /* 输出各栏目得票情况 */ for(i = 1;i <= 8;i++) printf("%4d%4d\n",i,count[i]); return 0; } input your response: 3 input your response: 6 input your response: 9 this is a bad response: 9 input your response: 8 … result: 1 2 2 0 3 4 …
frd=1例7中为何不使用 pr count[o 数组 0 2345678 count 041210 count[o count[1] count[8 数组:相同类型数据的有序集合,在内存中 连续存放。 口由数组名和下标惟一地确定每个数组元素 口每个元素都属于同一类型 批相同类型的变量使用同一个数组变量名, 用下标来相互区分。 口优点:表述简洁,可读性高;便于使用循环结构
0 1 2 3 4 5 6 7 8 2 0 4 1 2 1 0 0 for(i = 1;i <= 8;i++) printf("%4d%4d\n",i,count[i]); count count[0] count[1] count[8] 例7-1中为何不使用 count[0]? 数组 ◼ 数组:相同类型数据的有序集合,在内存中 连续存放。 由数组名和下标惟一地确定每个数组元素 每个元素都属于同一类型 ◼ 一批相同类型的变量使用同一个数组变量名, 用下标来相互区分。 优点:表述简洁,可读性高;便于使用循环结构