北京大学计算概论(C语言)经典课件Lecture 9——循环语句复习和数组(上).pptVIP

  • 14
  • 0
  • 约6.22千字
  • 约 36页
  • 2018-06-16 发布于湖北
  • 举报

北京大学计算概论(C语言)经典课件Lecture 9——循环语句复习和数组(上).ppt

* * * * * * * * * * 数组的使用 int nLen1= strlen(szLine1); j=0; for(i=nLen1-1; i=0; i--) an1[j++] = szLine1[i]-’0’; int nLen2= strlen(szLine2); j=0; for(i=nLen2-1; i=0; i--) an2[j++] = szLine2[i]-’0’; for(i=0; iMAX_LEN; i++) { an1[i] += an2[i]; if (an1[i]=10) { an1[i] -= 10; an1[i+1]++; } } 数组的使用 bool bStartOutput=false; for(i=MAX_LEN; i=0;i--) { if (bStartOutput) printf(“%d”, an1[i]); else if (an1[i]) { printf(“%d”, an1[i]); bStartOutput = true; } } return 0; } 小结 数组定义 数组的赋值、访问和遍历 课上练习 数组逆序排列 编程实现数组a[N]中数据逆序置换 元素交换 t = a[i]; a[i] = a[j]; a[j] = t; 例如: 6 5 4 3 2 1 1 2 3 4 5 6 作业 1. 输入一个整数输出其二进制、十六进制表示 2. 从键盘输入8个整数放入数组,然后将每个奇数加1,每个偶数减1,最后输出数组的所有元素 3. 有3门课程成绩,最多不超过30人 1. 计算每个学生的总分和平均分 2 . 任意输入一个学号能够查找出该学生的考试分数 3. 分别找出各科成绩的最高分 以及最高分 所对应的学生学号 4. 统计该班中各个分数段所占人数 思考题 问题描述 有 n 个人,编号为 1, 2, . . ., n, 站成一圈。沿着圈顺序数,每到第m个人就把他杀掉,这样一直进行下去,直到只剩下一个人,那个人就活下来。约瑟夫很聪明,他总会想办法站到一个合适的位置上,使得自己能够成为最后一个,从而活下来。例如:n = 6 , m = 5 时,被杀的顺序是5, 4, 6, 2, 3 ,而 1 最终活下来。 给定n, m,求出最后留下的人的编号位置 1 2 3 4 5 6 1 2 3 4 6 1 2 3 6 1 2 3 1 3 start end start end start end end start start end * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 计算概论 (Introduction to Computing) 马思伟 北京大学数字媒体研究所 / 第九讲 程序设计----数组 循环语句for 循环语句for(另一种当型循环) for (初始条件表达式;循环控制表达式;循环操作表达式)  语句/{语句组} 一次for循环执行过程 首先执行初始条件表达式(第一次):可以为空 循环控制表达式:一定是一个数值表达式,也可以为空 如果表达式值为真,条件成立,执行循环体一次 如果表达式值为假,条件不成立,退出循环 如果省略,默认值为真,直到遇到break, return语句退出循环 循环操作表达式:也可为空 初始条件表达式 语句/语句组 循环操作表达式 循环控制表达式 循环语句while 循环语句while(当型循环) while (表达式) 语句/{语句组} 表达式必须是数值表达式 一次循环 计算表达式的值 如果表达式值为真,执行循环体,为假退出  循环 表达式 语句/语句组 循环语句do-while 循环语句do-while(直到型循环) do { 语句/语句组} while (表达式); 一次循环 执行一次循环体 计算表达式,条件成立再执行一次循环体, 否则退出循环 语句/语句组 表达式 循环语句do-while 程序转移语句 程序转移相关语句包括: break continue 程序转移语句break break退出的是包含它的最内层循环体 例输出两个10以内的数,两数的和是5的倍数 #include stdio.h int main() { int i, j; for (i=1; i10; i++) for (j=1; j10; j++) { if ((i+j)%5==0) printf(“%d %d”

文档评论(0)

1亿VIP精品文档

相关文档