C基础语言习题及答案5

本文深入讲解了C语言中的循环结构,包括while、do-while及for循环的使用方法与区别,并通过典型例题帮助读者理解循环逻辑,掌握循环控制技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第五章             循环结构程序设计

一、选择题

1、   C语言中,当while中语句中的条件为__ __时,结束该循环

A、  0

B、   1

C、   True

D、  0

2、   C语言中,当do-while语句中的条件为______时,结束该循环

A、  0

B、   1

C、   True

D、  0

 

3、   K为整型,以下while循环体中的语句执行____

K=2;

While(k=0)

{printf(“%d”,k);

 k--;printf(“\n”);

}

A、   无限次

B、    0

C、    1

D、   2

4、   ix都是int类型,则以下for循环____

For(i=0,x=0;i<=9&&x!=876;i++)scanf(“%d”,&x);

A、   最多执行10

B、    最多执行9

C、    是无限循环

D、   循环体一次也不执行

5、逻辑运算符两侧运算对象的数据类型_______

A、   只能是01                 

B、    只能是0或非0正数

C、    只能是整型或字符型数据      

D、   可以是任何类型的数据

 

二、填空题

1、 C语言三个循环语句分别是    语句,    语句和     语句

2、 至少执行一次循环体的循环语句是      

3、 循环功能最强的循环语句是      

 

三、看程序写结果

1、 main ( )

{ int k=1,n=263 ;

   do { k*= n ; n/=10 ; } while (n) ;

   printf(“%d\n”,k);

}

2、 main()

{int i,j,p,s;

 s=0;

 for(i=1;i<=4;i++)

  {

   p=1;

   for(j=1;j<=i;j++)

p=p*j;

s=s+p;

}

Printf(“s=%d\n”,s);

}

3、 main()

{int i=1,s=3;

 Do{s+=i++;

   If(s%7==0)continue;

   Else  ++i;

   }while(s<15);

 Printf(“i=%d\n”,i);

}

4、 main()

{int s=0,k;

 For(k=7;k>=4;k--)

 {switchk

   {case 1:

Case 4:

Case 7:

S++;

Break;

Case 2:

Case 3:

Case 6:

Break;

Case 0:

Case 5:

 S+=2

 Break;

}

}

Printf(“s=%d”,s);

}

四、编程题

1、 while语句计算s=

2、 s=1+2+3+4+…….,直到s的值不小于28888,求此n的值为多少?

3、 判断m是否为素数

4、 Fibonacci数列前40个数。这个数列有如下特点:第12两个数为11.从第3个数开始,该数是其前面两个数之和。

5、 打印出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为153= + +

 

参考答案

一、选择题

1A    2A     3B     4A     5A

二、填空题

1while   do-while    for

2do-while

3for

三、看程序写结果

136

2s=33

3i=8

4s=4

 

四、编程题

1#include

   Main()

   {int i,s;

s=0;

i=1;

while(i<=100)

{s=s+i;

 i++;

}

Printf(“s=%d\n”,s);

}

 

2#include

   Main()

   {int i,s=0;

For(i=1;;i++)

[s=s+i;

 If(s>=28888) break;

 }

 Printf(“\ni=%d”,i);

}

3#include

   Main()

   {int m,n;

Scanf(“%d”,&m);

For(n=2;n<=m-1;n++)

if(m%n==0)break;

if(n>m-1)printf(“\n%d is a prime number!\n”,m);

else printf(“\n %d is not a prime number!\n”,m);

}

4、 main()

{long int f1,f2;

 Int i;

 f1=1;f2=1;

 for(i=1;i<=20;i++)

 {printf(“ldld”,f1,f2);

  If(i%2= =0)printf(“\n”);

  f1=f1+f2;

  f2=f2+f1;

   }

}

5#include

   Main()

   {int n,i,j,k;

For(n=100;n<1000;n++)

 {i=n/100;

  j=n/10-i*10;

  k=n;

  if(n= =i*i*i+j*j*j+k*k*k)

  printf(“%d\n”,n);

}

     }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值