第五章测试
1.

有以下C语言程序段:
int x;
scanf(“%d”,&x);
while(x>0)
{
 x=x-1;
 printf(“%d”,x);
}
当x输入为0时,输出结果为(     )。


A:

43210

B:

0

C:

D:

5


答案:C
2.

while与do-while语句的区别是(    )。


A:

while语句比do-while语句执行循环体的次数多一次

B:

while与do-while的功能完全一样

C:

如果开始时循环语句不成立,那么while语句的循环一次都不执行,do-while语句的循环至少执行一次

D:

do-while语句比while语句执行循环体的次数多一次

3.

已定义i和sum都为整数,以下C语言程序段的功能为(    )。
sum=0;  i=1;
while(i<=100)
{  sum=sum+i;
  i++;
}
printf(“%d”,sum);


A:

求1到100内所有整数的和

B:

求1到100内所有整数的积

C:

求1到100内所有偶数的和

D:

求1到100内所有奇数的和

4.

有以下C语言程序段:
int x;
scanf(“%d”,&x);
while(x>0)
   x=x-1;
printf(“%d”,x);
当x输入为5时,输出结果为(     )。


A:54321 B:0 C:43210 D:5 5.

有以下程序段:
int k=5;
while(--k) printf('%d',k -= 3);
执行后的输出结果是(   )。


A:3 B:1 C:0 D:2 6.

do-while语句的循环体至少执行1次,while和for循环的循环体可能一次也执行不到。


A:错 B:对 7.

已定义整型变量sum和i,及实型变量ave,以下程序段的功能是:用do-while语句实现,输入若干学生的整数成绩(以-1结束输入),求这些成绩的平均值ave。请在下划线处填写正确的语句(     )。
i=0;
do
{
 scanf(“%d”,&x);
 sum=sum+x;
 i++;      //i为输入整数成绩的个数
}while(______);
sum=sum+1;//总分去掉多加的-1
ave=1.0*sum/i;


A:

i>=10

B:

i<=10

C:

x==-1

D:

x!=-1

8.

有以下C语言程序段:
int x;
scanf(“%d”,&x);
do
{
 x=x-1;
 printf(“%d”,x);
} while(x>0);
当x输入为5时,输出结果为(     )。


A:

0

B:

43210

C:

54321

D:

-1

9.

do-while循环中while()后的分号可以省略。


A:错 B:对 10.

以下程序段,可以实现 sum=1-1/(2*2)+1/(3*3)-1/(4*4)+…+1/(n*n),请在下划线处写入正确的语句(    )。

int i,f=1;   //f表示每个加项的正负号
flaotsum=0;
for(i=1;i<=n;i++)
{
 sum=sum+_____________;
 f=-f;
}


A:

1/i*i

B:

f*1.0/(i*i)

C:

1.0/(i*i)

D:

1/(i*i)

11.

已定义整型变量i和sum,与以下程序段功能一样的程序有(     )。
sum=0;
for(i=1;i<=100;i++)sum+=i;


A:

sum=0;for(i=1;;i++ )

B:

sum=0;i=1;for( ; i<=100;i++) sum+=i;

C:

sum=0;for(i=1;i<=100;){i++;sum+=i;}

D:

sum=0;for(i=1;i<=100;)  sum+=i;i++;

12.

for语句后的( )内,有几个表达式(    )?


A:

2

B:

4

C:

3

D:

1

13.

已定义整型变量s、n和i,以下程序段中,能够实现s=n!,即s为n的阶层。请在下划线处写入正确的语句(       )。
scanf(“%d”,&n);
s=1;
for(i=1;i<=n;i++)
 __________;


A:

s=s+n

B:

s*=i

C:

s+=i

D:

s=s*n

14.

以下关于break说法正确的是(   )。


A:

break只能用在循环语句中。

B:

break可以终止所有的循环。

C:

break可以终止本层循环。

D:

break只能用在switch语句中。

15.

在C语言的循环语句for、while、do-while中,用于结束本次循环,继续执行下一次循环的语句是(  )。


A:

if

B:

break

C:

switch

D:

continue

16.

有以下程序段的功能是(   )。
 int i, s=0;
 for(i=1;i<=100;i++)
    { s=s+i;
     if(i>10) break;}
    }


A:1+2+……+100 B:1+2+……+11 C:1+2+……+9 D:1+2+……+10 17.

程序的功能是输出以下图形,请在下划线处写入正确的语句。(   )
*
**
***
****
*****
for(i=1;i<=5;i++)
{
 for(j=1;________;j++)
  putchar(‘*’);
 putchar(‘’);
}


A:

j<i

B:

j<=3

C:

j<=i

D:

j<=5

18.

以下程序段,循环体可以循环几次(   )。
for(i=1;i<=3;i++)
 for(j=1;j<=4;j++)
    {循环体};


A:

7

B:

3

C:

12

D:

4

19.

while、do-while、for语句可以互相嵌套,但是不能自身嵌套。


A:对 B:错 20.

若一个循环体中包含另一个完整的循环结构则称为循环的嵌套。


A:对 B:错

温馨提示支付 ¥4.99 元后可查看付费内容,请先翻页预览!
点赞(128) dxwkbang
返回
顶部