C语言程序设计(王晓云 主编)习题5.8

一、选择题

1. 有以下程序段
int k=0;
while(k=1)
k++;
则while 循环执行的次数是:( )。A

A) 无限次

B) 有语法错,不能执行

C) 一次也不执行

D) 执行1 次

解析:while(k=1)-->真命题
2. 在C 语言的循环语句for,while,do-while 语句中,用于直接中断最内层循环的语句是:
( )。C

A) switch

B) continue

C) break

D) if

3. 以下能正确计算1×2×3×…×10 的程序段是( )。C
A)do {i=1;s=1; s=s*i; i++; } while(i<=10);
B)do {i=1;s=0; s=s*i; i++; } while(i<=10);
C)i=1;s=1; do {s=s*i; i++; } while(i<=10);
D)i=1;s=0; do {s=s*i; i++; } while(i<=10);
4.下述语句执行后,变量k 的值是( )。B
int k=1;
while (k++<10);

A)10

B)11

C)9

D)无限循环,值不定

解析:当k=10时,还要执行一遍while(k++<10);这时k++<10这一条件先返回k的值10与10比较,再执行k+1,结果为假,循环结束,k的值为11.
5. 以下程序段的循环次数是( )。B
for (i=2; i= =0; ) printf("%d",i--) ;

A)无限次B)0 次C)1 次D)2 次

解析:i=2,判断不等于0,一次都不执行

二、填空题

1. C 语言三个循环语句分别是语句 for , 语句 while 和语句 do...while
2. 至少执行一次循环体的循环语句是 do...while
3. 循环功能最强的循环语句是 for
4. while 语句的特点是 先判断表达式,后执行循环体语句 ,do-while 语句的特点是 先执行循环体语句后判断表达式
5. 将for(表达式1;表达式2;表达式3)语句改写为while 语句是
答案:表达式 1;
    while(表达式2)
{
    for的循环体语句;
    表达式3;
}
6. 在循环中,continue 语句与break 语句的区别是:continue 语句只是 结束本次循环,而不是终止整个循环 ,break语句是 结束整个循环过程,不再判断执行循环的条件是否成立
7. 循环的嵌套是指 一个循环体中又包含一个完整的循环体结构
8. 以下程序中,while 循环的循环次数是: 无数次
void main()
{
    int i=0;
    while(i<10)
        { if(i<1) continue;
          if(i==5) break;
          i++;
        }
}
解析:continue语句,结束本次循环,接着进行是否执行下一次循环的判定。
9. 要使以下程序段输出10 个整数,请填入一个整数:答案:8
for(i=0;i<= _____ ;printf(“%d\n”,i+=2));
10. 下面程序的功能是从键盘输入一组字符,从中统计大写字母和小写字母的个数,请填空。

答案:c=getchar()

#include <stdio.h>
void main( )
{
int n = 0, m = 0;
    char c;
    while ((_________) != '\n')            //答案:c=getchar()
    {
        if (c >= 'A' && c <= 'Z')
            m++;
        else if (c >= 'a' && c <= 'z')
            n++;
    }
    printf("大写字母的个数为%d,小写字母的个数为%d\n", m, n);
}

三、运行结果题

1. 写出以下程序的运行结果:
#include <stdio.h>
void main()
{
int i;
for ( i=0; i<3; i++ )
switch ( i )
{ case 1 : printf(“%d ”, i);
case 2 : printf(“%d ”, i);
default : printf(“%d ”, i);
}}

2. 写出以下程序的运行结果:
#include <stdio.h>
void main()
{
int i,j,x=0;
for(i=0;i<2;i++)
{ x++;
for(j=0;j<3;j++)
{ if(j%2)
continue;
x++;
}
x++;
}
printf(“x=%d\n”,x);
}

四、编程题(见其他)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值