C语言While语句(13页).doc
-while及do_while循环结构一实验内容:1、 掌握while循环结构的特点。2、 掌握do_while循环结构的特点。3、 应用循环结构编程。二实验目的及要求:1、 熟练掌握while及do_while循环结构。 2使用while及do_while循环结构解决问题。三实验重点及难点:掌握while及do_while循环结构的异同。四实验步骤:1. 分析while循环结构的执行过程。1.1把下表补充完整,写出程序预期的输出。#include <stdio.h>void main()char ch = 'a'while(ch <= 'c')putchar(ch);+ch;putchar(ch);循环体循环控制putchar(ch);+ch;chch <= 'c''a'1-真输出ach: 'a'->'b'b1-真输出bCh:c->bc1-真输出cCh:d->cd0-假不输出Ch:d->c1.2用户输入2629时,把下表补充完整,写出程序预期的输出。#include <stdio.h> void main( ) int n, m, sum = 0; scanf("%d", &n); while(n > 0)m = n % 10;sum += m;n /= 10; printf("各位数字和为%dn", sum);循环体循环控制m= n % 10;sum += m;n /= 10;nn>026291-真m:?->9sum: 0->9n:2629->2622621-真M:9->2Sum:9->11n:262->26261-真M:2->6sum:11->17n:26->221-真m:6->2sum:17->19N:2->000-假1.3用户输入2629时,把下表补充完整,写出程序预期的输出。#include <stdio.h>void main()char ch;int sum = 0, m;ch = getchar();while(ch != 'n')m = ch - '0'sum = sum * 10 + m;ch = getchar();printf("%dn", sum);循环体循环控制m = ch - '0'sum = sum * 10 + m;ch = getchar();chch != 'n''2'1-真m:?->2sum: 0->2ch: '2'->'6'1.4 用户输入2629时,把下表补充完整,写出程序预期的输出。#include <stdio.h>void main()int n, m, sum = 0; scanf("%d", &n); while(n > 0)m = n % 10;sum = sum * 10 + m;n /= 10; printf("%dn", sum);循环体循环控制m= n % 10;sum = sum * 10 + m;n /= 10;nn>026291-真m:?->9sum: 0->9n:2629->2622621-真M:9->2Sum:9->92N:262->26261-真M:2->6Sum:92->926N:26->221-真M:6->2Sum:926->9262N:2->000-假2.用户输入一个三位的正整数,如果输入的不正确,程序就会一直让用户输入。要求分别用while循环结构和do-while循环结构实现。并比较二者的差异。3. 比较下面两段代码的不同。3.1 int i,sum=0;scanf("%d", &i);dosum += i;+i;while(i<=5);printf("%d/n", sum);3.2 int i,sum=0;scanf("%d", &i);while(i<=5)sum += i;+i;printf("%d/n", sum);第一个先执行再判断,第二个是先进行判断 再进入循环4用2种以上的方法编程求和:1+3+5+.+991+1/2+1/3+1/4+.+1/ n 1-1/2+1/3-1/4+.1/20五实验总结:(问题及收获)本次试验主要有while语句和for语句,要区分两者的不同第 12 页-