C语言实训指导书 下载本文

实训六 循环程序设计

训目的 一、实1、掌握while语句、do-while语句和for语句实现循环的方法

2、理解循环结构程序段中语句的执行过程 3、进一步掌握循环结构程序的应用 二、预习内容

熟悉以下语句: while语句、do-while语句、for、break、continue语句 三、上机内容

1、阅读以下程序,先预测其结果,再上机运行验证: ① main() ② main()

{ int x=-1; { int i=1,s=3; do{ do{ s+=i++;

x=x*x; if(s%7==0) continue; } while(!x); else ++i; }while(s<15); x);

printf(%d\\n, printf(%d,i); } }

运行结果是 运行结果是

④ #include stdio.h

③ #include stdio.h main() main() {

{ int a,s,n,count; int num=0; a=2;s=0;n=1;count=1; while(num<=2) while(count<=7) {

{ n=n*a; s=s+n; ++count;} num++; printf(s=%d,s); printf(%d\\n,num); } }

运行结果是 } 运行结果是 1、编程与程序分析

① 编程求1-3+5-7+9-11+……-99+101的值。

11

② 求出100~999之间的所有水仙花数。所谓的水仙花数是指其各位数的立方和等于此数本身,例333 371=3+1+7

③ 从键盘输入一组十进制整数,以9999结束,统计其中正数的个数和其中的正数之和。

#include stdio.h ④main()

{ int x=1,y=0,a=0,b=0;

for ( x=1; x<=4; x++ ) { switch(x) { case 1: switch (y) { case 0: a++; break;

程序的运行结果: case 1: b++; break; } case 2: a++; b++; break;

case 3: a++; b++; }

printf(a=%d, b=%d\\n, a, b); } }

、思考题2 12

(1)若有语句while (!x),则退出循环的条件是 。 循

(2)若有语句 while (x%2 && y>100 ),则继续循环条件是 ,而退出

环的条件是 。

(3)while (x=0)与while (x==0)两条语句的循环条件有何区别?

训目的一、实

1、进一步理解分支程序的执行过程

2、进一步理解循环结构程序段中语句的执行过程 3、掌握分支和循环的综合应用程序设计 二、预习内容

熟悉以下语句:if-else、switch、 while语句、do-while语句、for、break、continue语句 三、上机内容 1.完成程序填空

(1)将用户输入的字母以大写字母的形式输出。 main() { char c; scanf(%c, &c);

if ( ) printf(%c\\n, c); }

(2)以下程序打印菱形图案,程序运行时,输入4给变量n,试完整程序(提示:可以分解为两个三角形)。 main()

{ int n, i, j; printf(ENTER n:);

scanf( );

i++)

i<=n; for (i=1; *

); printf( ; j++) { for ( j=1; *** printf( *); ; j++) for ( j-1; ***** ******* }

***** i++)

( i=1; i<=n-1; for ***

); printf( { for ( j=1; ; j++) * printf( *); j++) ; for ( j-1; } }

x ( x<1 )

2.完成以下程序的编程:y=

3-x/5 ( 1<=x<10 ) (1)编程计算:3x-11 ( 1<=x<10 )

13

担,两匹小马驮一22)“百马百担”问题。有一百匹马,驮一百担货,大马驮三担,中马驮( 担,

实训七 一维数组的应用

试编程计算共有多少种驮法。