您好,欢迎来到六九路网。
搜索
您的当前位置:首页while语句(当型循环)c++

while语句(当型循环)c++

来源:六九路网
C程序设计讲义 四川职业技术学院邓绯

C程序设计讲义

循环结构程序设计(2次课)

教学目的:

1.领会程序设计中构成循环的方法 2.掌握while语句的用法

教学重点:

熟练使用while语句实现循环

教学难点:

掌握用循环实现程序

授课形式:

理论 多媒体

教学条件:

教学内容:

复习:学习过了顺序,选择语句

提出问题:但如何处理1+2+3…+100等等重复的问题呢? 新课:循环结构程序设计 while语句(当型循环)

一般形式:while(表达式) 语句; 或:

while(表达式) {

语句序列;

}

执行时,先判断表达式。若表达式为非0值,执行循环体语句,然后再判断表达式,知道表达式为0(假)时结束循环。 例(书5-1)

k

k1100#include #include void main() {

int s=0,k=1; while(k<=100) {

s=s+k; k++; }

第 1 页 共 7 页

C程序设计讲义 四川职业技术学院邓绯 printf(\"%d\}

例(书5-2)从键盘上输入一个整数n,求n! #include void main() { int s=1,k=1,n; scanf(\"%d\ while(k<=n) { s=s*k; k++; } printf(\"%d\}

注意:在累乘求积时,累乘单元必须先置1

(1)while语句先计算表达式值,根据表达式的值决定是否执行循环体中的语句。表达式

的值一开始就为“假”,那么循环体一次也不执行。

(2)当循环体为多个语句组成,必须用{}括起来,形成复合语句。 (3)在循环体中应有使循环趋于结束的语句,以避免“死循环”的发生。 (4)累乘单元初值为1,累加求和单元初值为0

例(书5-3了解):从键盘上出入20个学生的成绩,求平均分。

例(书5-4经典程序):输入两个正整数m,n,求其最大公约数和最小公倍数。 #include \"stdio.h\" void main() {

int beichu,chu,yu,beichu2,chu2; printf(\"please input two number:\\n\"); scanf(\"%d%d\beichu2=beichu;chu2=chu; yu=beichu%chu; while(yu!=0) { }

第 2 页 共 7 页

beichu=chu;chu=yu;yu=beichu%chu;

C程序设计讲义 四川职业技术学院邓绯 }

例(书5-5了解):输入一批非零数,以0为结束符,输出其中的最小值。 #include \"stdio.h\" void main() { }

例(书5-16经典程序):输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。

#include void main() {

char ch;

int ywzm=0,kg=0,sz=0,qt=0; while((ch=getchar())!='\\n') {

if(ch>='A'&&ch<='Z'||ch>='a'&&ch<='z') ywzm++; else if(ch==' ') kg++;

else if(ch>='0'&&ch<='9') sz++; else qt++;

第 3 页 共 7 页

printf(\"zui da gong yue is:%d\\n\

printf(\"zui xiao gong bei is:%d\\n\

int min,x; scanf(\"%d\min=x; while(x!=0) { }

printf(\"%d\

if(min>x)min=x; scanf(\"%d\

C程序设计讲义 四川职业技术学院邓绯

}

printf(\"英文字母有%d个,空格有%d个,数字=%d个,其他字符=%d个

\\n\}

例(思路和技巧,经典程序):输入一个正整数,将其分解,然后倒序重新组成一个新数,并输出。例如输入一个数13579,则输出的新数位97531。 #include void main() { }

long a,newa=0,t; scanf(\"%ld\while(a>0) { }

printf(\"%ld\

t=a%10; newa=newa*10+t; a=a/10;

四川职业技术学院计算机科学系实验(实训)报告 课程 学生姓名 C程序设计 实验名称 教师 邓绯 班级 while语句的使用 任务 (教师) 1. 用while语句编写程序:实现1+2+3+4+5….+100 2. (重点背)请写出求两个数的最大公约数和最小公倍数。(参考例题) 3. (重点背)用while语句编写程序:输入一行字符,统计空格,小写字母,大写字母,数字,其他字符有多少个?(参考例题) 4. (重点背)输入一个正整数,将其分解,然后倒序重新组成一个新数,并输出。例如输入一个数13579,则输出的新数位97531。 附加:用while语句实现s=1+1/2! +1/3!+1/4!+1/5!+….+1/n! (作为家庭作业) (1)#include void main() { int s=0,k=1; 第 4 页 共 7 页

学生 报告 C程序设计讲义 四川职业技术学院邓绯

} while(k<=100) { s=s+k; k++; } printf(\"%d\ (2)main() { int a,b,c,a1,c1; scanf(\"%d%d\ c=a%b;a1=a;b1=b; while(c!=0) { a=b; b=c; c=a%b; } Printf(\"最大公约数是%d\\n最小公倍数是%d\\n\} (3)main() { char ch; int kongge=0,xiaoxie=0,daxie=0,shuzi=0,qita=0; while((ch=getchar())!='\\n') { if(ch==' ') kongge++; else if(ch>='a'&&ch<='z') xiaoxie++; else if(ch>='A'&&ch<='Z') daxie++; 第 5 页 共 7 页

C程序设计讲义 四川职业技术学院邓绯

} else if(ch>='0'&&ch<='9') shuzi++; else qita++; } printf(\"%d %d %d %d\\n\ (4)main() { long x,newx=0,t; scanf(\"%ld\ while(x>0) { t=x%10; newx=newx*10+t; x=x/10; } printf(\"%ld\\n\} 学生 体会 教师 评语 成绩 第 6 页 共 7 页

C程序设计讲义 四川职业技术学院邓绯

第 7 页 共 7 页

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 69lv.com 版权所有 湘ICP备2023021910号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务