C语言 循环结构程序设计模拟题

合集下载

c语言程序设计模拟试题

c语言程序设计模拟试题

c语言程序设计模拟试题C语言程序设计模拟试题一、选择题(每题2分,共20分)1. C语言中,以下哪个不是合法的变量名?- A. 2variable- B. Variable2- C. variable_2- D. Variable2. 在C语言中,以下哪个选项是正确的字符串字面量? - A. "Hello, World"- B. 'Hello, World'- C. "Hello World"- D. {"Hello", "World"}3. 以下哪个不是C语言中的基本数据类型?- A. int- B. char- C. float- D. string4. 在C语言中,以下哪个不是运算符?- A. +- B. -- C. *- D. to5. 以下哪个语句是正确的C语言循环语句?- A. do { ... } while;- B. while { ... }- C. for { ... }- D. switch { ... }6. 以下哪个函数是C语言标准库中用于字符到整数的转换? - A. atoi()- B. itoa()- C. atof()- D. strtol()7. 在C语言中,以下哪个不是控制语句?- A. if- B. switch- C. continue- D. return8. 在C语言中,以下哪个是正确的函数声明?- A. int function_name();- B. function_name int;- C. int function_name = 0;- D. int function_name = function();9. 在C语言中,以下哪个是正确的数组声明?- A. int array[10];- B. int [10] array;- C. int array = 10;- D. int array[10] = {0};10. 在C语言中,以下哪个是正确的结构体声明?- A. struct Student { int age; char name[50]; };- B. struct { int age; char name[50]; } Student;- C. Student struct { int age; char name[50]; };- D. struct Student int age; char name[50];二、填空题(每空2分,共20分)1. 在C语言中,一个变量的声明必须在______。

C语言程序设计模拟试题11一、填...

C语言程序设计模拟试题11一、填...

C语言程序设计模拟试题11一、填空题(每空1分,共10分)1. C语言程序的三种基本结构是顺序结构,选择结构,循环结构。

2. 有定义:int a[3][4]={{1,2},{0},{4,6,8,10}};则初始化后,a[1][2]=0,a[2][1]=6。

3. 设x,y,z均为int 型变量,C语言描述”x或y中有一个小于z”的表达式是x<z||y<z。

4. 若for循环用以下形式表示:for(表达式1;表达式2;表达式3) 循环体语句则执行语句for(i=0;i<3;i++) printf(“*”);时,表达式1执行1次,表达式3执行3次。

5. 在C语言中,十进制数30的八进制表示形式是036 ,十六进制表示形式是0x1e 。

二、阅读填空(每空2分,共12分)。

1.以下函数求x的y次方。

duble fun(double x,int y){int i;double z=1.0;for(i=1;i <=y ;i++)z=z*x ;return(z);}2.下列程序段是从键盘输入的字符中统计数字字符的个数,用换行结束循环。

int n=0; char c;c=getchar();while(c!=‘\n’){ if(c>=‘0’&& c<=‘9’) n++;c=getchar(); }3.下面程序中可求出矩阵a的两条对角线上的元素之和。

#include“stdio.h”main(){int a[3][3]={1,3,6,7,9,11,14,15,17}, sum1=0,sum2=0,i,j;for(i=0;i<3;i++)for(j=0;j<3;j++)if(i==j) sum1=sum1+a[i][j];for(i=0;i<3;i++)for(j=2;j>=0;j--)if((i+j)==2) sum2=sum2+a[i][j];printf(“sum1=%d,sum2=%d\n”,sum1,sum2);}三、单项选择题(每小题2分,共78分)1.一个C语言的执行是从 A 。

C循环结构程序设计试题以及参考答案

C循环结构程序设计试题以及参考答案

C循环结构程序设计试题以及参考答案C循环结构程序设计试题以及参考答案实验内容:1.编程:输出200以内所有能被7整除的数。

#includemain(){int i;for(i=1;i<200;i++)if(i%7==0)printf("%4d",i);}2. 编程:求出1 ~ 1000之间能被13整除的最⼤的那个数。

#includemain(){int i,max=0;for(i=1;i<1000;i++)if(i%13==0){i>=max;max=i;}printf("max=%d",max);}3.编程:找出若⼲个⾮零数中的最⼩值m以及它们的平均值a。

要求:若⼲个数由键盘输⼊,每次输⼊⼀个赋给变量x,x为零时,结束输⼊。

#includemain(){int n,i,b,min,s=0;float a;printf("输⼊的数据的个数n=");scanf("%d",&n);for(i=1;i<=n;i++){scanf("%d",&b);if(i==1)min=b;if(min>b)min=b;s=s+b;}a=s*1.0/n;printf("min=%d\n a=%f",min,a); }4. 编程:求两个正整数m、n之间所有奇数之和x与偶数之和y。

要求:(1)m、n的值由键盘输⼊。

(2)输⼊时,允许⽤户随意先输⼊⼤的或⼩的整数。

#include main(){int m,n,i,x1=0,x2=0;printf("input m,n(mscanf("%d,%d",&m,&n);for(i=m;i<=n;i++){if (i%2==1)x1+=i;elsex2+=i;}printf("x1=%d,x2=%d\n",x1,x2);}5. 编程:计算π的近似值,π的计算公式为:要求:(1)n值由键盘输⼊。

C 循环结构23道题[含答案解析]

C  循环结构23道题[含答案解析]

题目、描述、输入、输出、输入样例、输出样例、测试输入、测试输出循环01:最大数写一个程序,可以输入一批正数,输入0时结束循环,并且输出最大的正数。

输入39 28 5 63 18 27 0输出63测试:输入153 26 963 28 75 90 156 0输出963#include<iostream>using namespace std;int main(){int i,max=0;cin>>i;while(i!=0){if(i>max)max=i;cin>>i;}cout<<max<<endl;return 0;}循环02:素数输入正数n,判断n是否为素数。

若为素数则输出1,否则输出0。

(提示:素数是指只可以被1和其本身整除的正数(1除外))输入10输出0输入7输出1测试:输入9输出0#include<iostream>using namespace std;int main(){int n,i,d;cin>>n;for(i=2;i<n;i++){d=n%i;if(n%i==0)break;}if(n==i)cout<<"1"<<endl;elsecout<<"0"<<endl;return 0;}循环03:数列求和输入一个正整数n,计算前n项之和:1+1/4+1/7+1/10..+1/(3*n-2)。

输入5输出1.56978输入4输出1.49286#include<iostream>using namespace std;int main(){int i,n;double s=0;cin>>n;for(i=1;i<=n;i++)s+=1.0/(3*i-2);cout<<s<<endl;return 0;}循环04:西瓜卖几天n个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完?说明:当西瓜个数为奇数时,卖一半为一半的整数,如当西瓜个数为5时,卖一半为卖2个。

c语言第5章练习题--循环结构程序设计

c语言第5章练习题--循环结构程序设计

难度(*)--考点:基本概念、判断循环次数1、C语言中下列叙述正确的是(D)A)不能使用do…while语句构成的循环B)do…while语句构成的循环,必须用break语句才能退出C)do…while语句构成的循环,当while语句中的表达式值为非零时结束循环D)do…while语句构成的循环,当while语句中的表达式值为零时结束循环2、对于下列程序片断,(A)int k=0;while(k=1) k++;则while循环的执行次数是A. 无限次B. 有语法错误,不能执行C. 一次也不执行D. 执行一次3、下面程序段(C)int k=2;while (k=0) {printf(“%d”,k);k--;}则下面描述中正确的是。

A )while 循环执行10 次B )循环是无限循环C )循环题语句一次也不执行D )循环体语句执行一次4、当执行以下程序段时(A)x=-1;do { x=x*x;} while(!x);A)循环体将执行一次B)循环体将执行两次C)循环体将执行无限次D)系统将提示有语法错误5、若i为整型变量,则以下循环执行次数是(B):for( i = 2; i ==0;) printf(“%d”, i);A) 无限次B) 0次c) 1次D) 2次6、对for(表达式1; ; 表达式3)可理解为(B)A) for(表达式1; 0 ; 表达式3)B) for(表达式1; 1 ; 表达式3)C) for(表达式1;表达式1; 表达式3)D) for(表达式1;表达式3; 表达式3)7、下面程序的功能是从键盘输入一组字符,从中统计大写字母和小写字母的个数,选择填空。

(A)main ( ){ int m=0,n=0;char c;while (( ) ! '\n'){if (c>='A' && c<='Z') m++;if (c>='a' && c<='z') n++;}}A)c=getchar( ) B)getchar( ) C)c==getchar( ) D)scanf(“%c”,&c)8、下面for 循环语句。

C语言循环结构练习题带答案.doc

C语言循环结构练习题带答案.doc

第 5 章循环结构程序设计练习题1.单项选择题( 1)语句 while (!e);中的条件!e等价于A。

A. e==0B. e!=1C. e!=0D. ~e( 2)下面有关for循环的正确描述是D。

A. for循环只能用于循环次数已经确定的情况B. for循环是先执行循环体语句,后判定表达式C. 在 for循环中,不能用break 语句跳出循环体D. for循环体语句中,可以包含多条语句,但要用花括号括起来(3)C语言中D。

A.不能使用do-while语句构成的循环B. do-while 语句构成的循环必须用break 语句才能退出C. do-while 语句构成的循环,当while 语句中的表达式值为非零时结束循环D. do-while 语句构成的循环,当while 语句中的表达式值为零时结束循环( 4) C 语言中 while 和 do-while 循环的主要区别是A 。

A. do-while的循环体至少无条件执行一次B. while的循环控制条件比do-while的循环控制条件严格C. do-while允许从外部转到循环体内D. do-while的循环体不能是复合语句( 5)以下程序段C。

int x=-1;do{x=x*x;}while (!x);A.是死循环B. 循环执行二次C. 循环执行一次D. 有语法错误( 6)下列语句段中不是死循环的是__C__。

A.i=100;while (1){i=i%100+1;if (i==20) break;}B.for (i=1;;i++)sum=sum+1;C.k=0;do{++k;} while (k<=0);D.s=3379;while (s++%2+3%2)s++;( 7)与以下程序段等价的是__A__。

while (a){if (b) continue;c;}A.while (a)B.while (c){ if (!b) c; }{ if (!b) break; c; }C. while (c)D. while (a){ if (b) c; }{ if (b) break; c; }( 8)以下程序的输出结果是_B___。

C语言程序设计:循环结构程序设计单元测试与答案

C语言程序设计:循环结构程序设计单元测试与答案

一、单选题1、下面程序的运行结果是 ( )。

#include <stdio.h>int main( ){int i=5;while(i>0);printf("%d",i--);return 0;}A.5B.死循环C.0D.-1正确答案:B2、关于下面程序段,正确的是()。

int k=10;while(!k)k--;A.循环体执行1次B.循环体执行10次C.循环体一次也不执行D.死循环正确答案:C3、下面程序的运行结果是( )。

#include <stdio.h>int main( ){int x=3;do{printf("%3d",x-=2);}while(!(--x));return 0;}A.1 -2B.死循环C.10D.1正确答案:A4、下面程序的运行结果是( )。

#include <stdio.h>int main( ){int i=10;while(i-->0);printf("%d ",i);return 0;}A.10B.0C.10987654321D.-1正确答案:D5、已定义int j; 下面程序段的输出结果是()。

for(j=7;j<10;j++)printf("%d",j);A.91011B.8910C.789D.无结果正确答案:C6、下面程序的输出结果是()。

#include <stdio.h>int main( ){int i,j,s=0;for(j=1,i=7;j<=i;j++,i--)s=s+i+j;printf("%d",s);return 0;}A.死循环B.28C.0D.32正确答案:D二、判断题1、while循环语句至少无条件执行一次循环体。

正确答案:×2、for循环语句只能用于循环次数已经确定的情况。

C语言全国试题(五-循环结构程序设计)

C语言全国试题(五-循环结构程序设计)

填空题(全国二级C 2008C2-8)
若有定义:int k;,以下程 序段的输出结果是__#_#_2_#_#_4__。
for (k=2; k<6; k++,k++ ) printf (“##%d”,k);
选择题(全国二级C 2007Q1-22)
C 有以下程序,程序的运行结果是 。
#include <stdio.h>
{ int i;
for ( i=1 ; i<=40; i++)
{ if (i++%5==0)
if (++i%8==0)printf("%d ",i); }
printf("\n"); }
A) 5
B) 24
C) 32
D) 40
选择题(全国二级C 2005Q1-27)
设变量已正确定义,则以下能正确
计算f=n!的程序段是 D 。
有以下程序段,且变量已正确定义和赋值
for ( s=1.0,k=1;k<=n; k++ ) s=s+1.0/(k*(k+1));
printf(“s=%f\n\n”,s); 请填空,使下面程序段的功能与之完全相同
s=1.0; k=1; while ( ___k_<_=_n__ ) { s=s+1.0/(k*(k+1)); __k_+_+__ ; } printf(“s=%f\n\n”,s);
以下程序的功能是计算: s=1+12+123+1234+12345。请填空。 main( ) { int t=0, s=0, i; for(i=1; i<=5; i++)

C语言各章节单元测试题及答案——循环结构程序设计

C语言各章节单元测试题及答案——循环结构程序设计

第3章循环结构程序设计3.1 典型考试题剖析3.1.1 选择题【例1】若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c 均已赋值(c大于0)s=a;for(b=1;b<=c;b++) s=s+1;则与上述程序段功能等价的赋值语句是_______。

A)s=a+b; B)s=a+c; C)s=s+c; D)s=b+c;✧考点:本例考查for循环。

✧分析:初始赋值时s=a,那么s的值一定与a有关,C、D答案中不含a所以排除掉。

只用清楚for循环的次数,不管b以前的值为多少,第一次循环时b=1,当b>c时循环结束,那么显然s要加c次1。

所以s的值为a与c的和。

✧答案:B【例2】设x和y均为int型变量,则执行下面的循环后,y值为。

for(y=1,x=1;y<=50;y++){if(x>=10) break;if(x%2==1){x+=5;continue;}x-=3;}A) 2 B) 4 C) 6 D) 8✧考点:本例考查for循环中break和continue的用法,以及区别。

✧分析:break用在循环中,只能退出一层循环。

尤其是在嵌套循环中,只能退出它所在的那一层循环。

不能期望用break从最内层循环一下子退出最外层循环(可以用goto实现)。

continue语句只能用在循环中,它的作用是跳过其后面的语句,直接将控制转移到下一轮循环条件的测试。

语句“if(x>=10) break;”中的break只有当x>=10时,才会执行,并且跳出for循环;语句“x+=5;continue;”是每次执行完一次跳过其后面的语句,直接将控制转移到下一轮循环条件的测试for(y=1,x=1;y<=50;y++)中。

✧答案:C【例3】以下程序中,while循环的循环次数是_______。

main(){ int i=0;while(i<10){ if(i<1) continue;if(i==5) break;i++;}......}A) 1 B) 10 C) 6 D) 死循环,不能确定次数✧考点:本例考查while循环的用法,以及continue和break的分别。

C语言循环结构程序设计编程题

C语言循环结构程序设计编程题

实验3 循环结构程序设计一.实验目的:1.掌握使用while 语句,do-while 语句和for 语句实现循环的方法。

2.掌握在循环结构中使用break 与continue 语句的方法。

3.掌握多重循环的使用方法。

二.实验内容:1.编写程序输出半径为1到15的圆的面积,若面积在30到100之间则予以输出,否则,不予输出。

2.打印出所有“水仙花数”。

所谓“水仙花数”是指一个三位数,其各位数字的立方之和正好等于该数本身。

例如:153是一个“水仙花数”,因为153=13+53+33。

3.编写程序,分行输出斐波那契序列的前20项(每行5个数)。

说明:斐波那契序列:1,1,2,3,5,8,13,21,……4.编写程序,输出“九九乘法口诀表”。

5.编写程序,分行输出100以内所有的素数(每行5个数)。

6.有两个红球、三个黄球、四个白球,任意取五个球,其中必须有一个黄球,编程输出所有可能的方案。

7.编写程序求解sn=a+aa+…+a …a,其中a 是1-9中的一个数字。

n 为一正整数,a 和n 均从键盘输入。

(例如输入n 为4,a 为2,sn=2+22+222+2222)8.编程统计从键盘输入的字符中数字字符的个数,用换行符结束循环。

9. 编写程序,输出200以内所有能被7整除的数。

10. 编写程序,求1~1000之间能被13整除的最大的那个数。

11. 找出若干个非零数中的最小值m 以及它们的平均值a 。

要求:从键盘输入若干个数,每次输入一个赋给变量x ,x 为零时,结束输入。

12. 从键盘输入整数 n ,输出 1+3+5+7+……前 n 项的和。

(n<=100)13. 编写一个程序,求s=1+(1+2)+(1+2+3)+…+(1+2+3+…+n)的值。

14. 编写一个程序,用户输入一个正整数,把它的各位数字前后颠倒一下,并输出颠倒后的结果。

15. 编写一个程序,求出200到300之间的数,且满足条件:它们三个数字之积为42,三个数字之和为12。

c语言循环试题及答案

c语言循环试题及答案

c语言循环试题及答案C语言循环试题及答案1. 以下哪个选项是C语言中实现循环的关键字?A. switchB. caseC. whileD. do答案:C2. 写出一个使用for循环的程序段,计算1到100之间所有奇数的和。

```cint sum = 0;for(int i = 1; i <= 100; i += 2) {sum += i;}printf("The sum of odd numbers from 1 to 100 is %d", sum);```3. 以下哪个语句是正确的while循环的语法?A. while (condition) statementB. do statement while (condition)C. for (initialization; condition; iteration)D. if (condition) statement答案:A4. 假设有一个数组arr[10],以下哪个循环可以用来遍历这个数组?```cint i;for(i = 0; i < 10; i++) {// 遍历数组}```5. 如果要使用do-while循环打印出1到5的数字,以下哪个程序段是正确的?```cint i = 1;do {printf("%d ", i);i++;} while (i <= 5);```6. 以下哪个选项是break语句的正确用法?A. 用于跳出switch语句B. 用于跳出循环C. 用于进入循环D. 用于结束程序答案:B7. 写出一个使用while循环的程序段,计算1到10的乘积。

int product = 1;int i = 1;while(i <= 10) {product *= i;i++;}printf("The product of numbers from 1 to 10 is %d", product); ```8. 以下哪个选项是continue语句的正确用法?A. 跳过当前循环的剩余部分,开始下一次循环B. 用于跳出循环C. 用于进入循环D. 用于结束程序答案:A9. 假设有一个字符串str,以下哪个循环可以用来遍历这个字符串?```cchar str[] = "Hello";int i = 0;while(str[i] != '\0') {// 遍历字符串i++;}```10. 以下哪个程序段将打印出2到10之间的所有偶数?for(int i = 2; i <= 10; i += 2) { printf("%d ", i);}```。

c语言循环试题及答案

c语言循环试题及答案

c语言循环试题及答案C语言是一种广泛应用于计算机编程领域的编程语言。

在学习C语言的过程中,掌握循环语句是非常重要的,因为循环可以使程序重复执行特定的代码块。

下面将介绍几道C语言循环试题及其详细答案,希望对你的学习有所帮助。

试题一:编写一个程序,要求用户输入一个整数n,计算并输出1到n之间的所有自然数的和。

答案一:```c#include <stdio.h>int main() {int n, i, sum = 0;printf("请输入一个整数n: ");scanf("%d", &n);for (i = 1; i <= n; i++) {sum += i;}printf("1到%d之间的所有自然数的和为:%d\n", n, sum);return 0;}```试题二:编写一个程序,要求用户输入一个正整数n,计算并输出n的阶乘。

答案二:```c#include <stdio.h>int main() {int n, i;unsigned long long factorial = 1;printf("请输入一个正整数n: ");scanf("%d", &n);for (i = 1; i <= n; i++) {factorial *= i;}printf("%d的阶乘为:%llu\n", n, factorial);return 0;}```试题三:编写一个程序,要求用户输入一个整数n,判断并输出n是否为素数(质数)。

答案三:```c#include <stdio.h>int main() {int n, i, isPrime = 1;printf("请输入一个整数n: ");scanf("%d", &n);for (i = 2; i <= n / 2; i++) {if (n % i == 0) {isPrime = 0;break;}}if (isPrime == 1) {printf("%d是素数。

C语言 循环结构程序设计模拟题

C语言  循环结构程序设计模拟题

C语言循环结构程序设计模拟题-CAL-FENGHAI.-(YICAI)-Company One1第五章循环结构程序设计一、选择题1.while循环语句中,while后一对圆括号中表达式的值决定了循环体是否进行,因此,进入while循环后,一定有能使此表达式的值变为的操作,否则,循环将会无限制地进行下去。

(0级)A)0 B)1 C)成立 D)22.在do-while循环中,循环由do开始,用while结束;必须注意的是:在while表达式后面的不能丢,它表示do-while语句的结束。

(0级)A)0 B)1 C); D),3.for语句中的表达式可以部分或全部省略,但两个不可省略。

但当三个表达式均省略后,因缺少条件判断,循环会无限制地执行下去,形成死循环。

(0级)A)0 B)1 C); D),4.程序段如下int k=-20;while(k=0) k=k+1;则以下说法中正确的是。

(1级)A)while循环执行20次 B)循环是无限循环C)循环体语句一次也不执行 D)循环体语句执行一次5.程序段如下int k=1;while(!k==0) {k=k+1;printf("%d\n",k);}说法正确的是。

(1级)A)while循环执行2次 B)循环是无限循环C)循环体语句一次也不执行 D)循环体语句执行一次6.以下for循环是。

(1级)for(a=0,b=0;(b!=123)&&(a<=4);a++)A)无限循环 B)循环次数不定 C)执行4次 D)执行5次7.在下列程序中,while循环的循环次数是。

(1级)main( ){ int i=0;while(i<10){if(i<1) continue;if(i= =5) break;i++;}......}A)1 B)10 C)6 D)死循环、不能确定次数8.程序段如下int k=0; while(k++<=2) printf("%d\n",k);则执行结果是。

C语言循环结构练习题

C语言循环结构练习题

(1)编写一个程序,求100199********-++-+-Λ之值。

(2)编写一个程序,求s=1+(1+2)+(1+2+3)+…+(1+2+3+…+n)的值。

(3)编写一个程序,用户输入一个正整数,把它的各位数字前后颠倒一下,并输出颠倒后的结果。

(4)编写一个程序,求出200到300之间的数,且满足条件:它们三个数字之积为42,三个数字之和为12。

(5)编写一个程序,求出满足下列条件的四位数:该数是个完全平方数,且第一、三位数字之和为10,第二、四位数字之积为12。

(6)编写一个程序,求e 的值。

!1!21!111n e ++++≈Λ (7)编写一个程序,求满足如下条件的最大的n :10003212222≤++++n Λ(8)某人摘下一些桃子,卖掉一半,又吃了一只;第二天卖掉剩下的一半,又吃了一只;第三天、第四天、第五天都如此办理,第六天一看,发现就剩下一只桃子了。

编写一个程序,采用迭代法问某人共摘了多少只桃子。

(9) 输入一批非0数,直到输入0时为止,计算其中奇数的平均值和偶数的乘积。

(东师大,01年)(10)求一组整数中的正数之积与负数之和,直到遇到0时结束。

(东师大,03年)(11)输入一组实数,求前10个正数的平均值。

(东师大,02年)(12)编程求1~200中能被2,3,5除余1的前10个整数。

(东师大,02年)(13)输入100个整数,统计这些数中能被3或5整除数所占的百分比。

(东师大,02年)(14)计算并输出200—600中能被7整除,且至少有一位数字是3的所有数的和。

(东师大,01年)(15)输出1~999中能被5整除,且百位数字是5的所有整数。

(东师大,04年)(16)设N 是一个四位数,它的9倍恰好是其反序数(例如:1234的反序数是4321),求N 值。

(东师大,03年)\(17)有这样一个三位数,该三位数等于其每位数字的阶乘之和,即abc=a !+b !+c !。

(如:145=1!+4!+5!)(东师大,04年)(18)编写程序求出满足下列条件的四位数:该数是个完全平方数;千位、十位数字之和为10,百位、个位数字之积为12。

C语言-第5章 循环结构程序设计

C语言-第5章 循环结构程序设计

第5章循环结构程序设计一、单项选择题1.在C语言中,下列说法中正确的是()。

A) do-while语句构成的循环不能用其它语句构成的循环来代替。

B) do-while语句构成的循环只能用break语句退出。

C) do-while语句构成的循环在while后的表达式非零时结束循环。

D) do-while语句构成的循环,在while后的表达式为零时结束循环。

2. break语句不能出现在语句中()A) switch B)for C) while D) if…else3.对于break语句和continue语句的说法错误的是()A) break语句不能用于循环语句和switch语句之外的任何其他语句中。

B) break和continue也可以用于if语句中C) continue语句只结束本次循环,而不是终止整个循环的执行。

D) break语句是结束整个循环过程,不再判断执行循环的条件是否成立。

4. 语句while(!y);中的表达式!y等价于A)y==0 B)y=1 C)y=!0 D) y==15. 若有“int a=1,x=1;”,则循环语句“while(a<10) x++; a++;”的循环执行()。

A)无限次B)不确定次C)10次D)9次6. 有以下程序段int k=0while(k) k++;则while循环体执行的次数是A) 无限次B) 有语法错,不能执行C) 一次也不执行D) 执行1次7. 下列循环语句中有语法错误的是( )A while(x=y) 5;B while(0) ;C do 2;while(x= =b);D do x++ while(x= =10);8. 当运行时输入:abcd$abcde ,下面程序的运行结果是。

#include<stdio.h>main(){char c;while(putchar(getchar())!='$');printf("end");}A)abcd$abcde B)abcd$end C)abcdend D)abcd$abcdeend 9. 以下程序段( )x=-1;do { x=x*x; }while(x>0);A) 是死循环B) 循环执行一次C) 循环执行二次D) 有语法错误10. 下面程序段执行后的结果为: ( )int sum=0, n=10;do { sum=sum+n;n++; }while(n<10);printf(“%d,%d”,sum,n);A. 0, 10 B) 10, 11C) 0, 11 D) 以上结果都不对12. 循环“for(i=0,x=1;i=10&&x>0;i++);”的循环执行()。

C语言三大循环结构的练习题

C语言三大循环结构的练习题

专题二练习一、选择:1、以下程序的运行结果是()。

(南师大04)main(){int a=5,b=4,c=6,d;printf("%d\n",d=a>b?(a>c?a:c):(b));}A. 5B. 4C. 6D.不确定2、以下程序的运行结果是()。

(南师大04)main(){int a=4,b=5,c=0,d;d=!a&&!b||!c;printf("%d\n",d);}A. 1B. 0C. 非0的数D. —13、如下程序的运行结果是()。

(南师大04)void main(){int x=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}printf("a=%d,b=%d\n",a,b); }A. a=2,b=1B. a=1,b=1C. a=1,b=0D. a=2,b=24、对于如下程序段,何时执行后的结果为true?()(南师大04)if(i=0)printf("true");else printf("false");A. 总是B. 绝不会C. 当i为0时D. 当i不为0时5、下列程序段执行后,变量x的值是()。

(南师大04)for(x=2;x<10;x+=3);A. 2B. 9C. 10D. 116、设int a=0,b=5;执行表达式++a||++b,a+b后,a,b和表达式的值分别是()。

(南师大05)A、1,5,7B、1,6,7 C 、1,5,6 D、0,5,77、使用C语言描述关系表达式a<=x<b,正确描述是()。

(南师大05)A、a<=x<bB、x>=a&x<bC、x>=a&&x<bD、a<=x&&<b8、设i,j均为int类型的变量,则以下程序段中执行完成后,打印出的"OK"数是多少?(南师大08)for (i=5;i>0;--i){for(j=0;j<4;j++){ printf("%s","OK");}}(a) 20 (b) 24 (c) 25 (d) 309、表达式-1<=3<=-5 的值是:(南师大08)(a) 0 (b) 1 (c) 3 (d) 表达式语法有错10、若有以下说明和语句,则输出结果是哪一项?(南师大08)Char str[30]="nanjing Normal University!";Str[7]='\0';Printf("%d",strlen(str));(a) 6 (b) 7 (c) 8 (d) 2611、设x,y,z,t均为int型变量,则执行以下语句后,t的值是什么?(南师大08)x=y=z=1;t= x || y && z ;(a) 不定值(b) 2 (c) 1 (d) 01,(x>0)12.下列能够正确实现函数y= 0,(x=0)。

c语言循环题库

c语言循环题库

c语言循环题库一、在C语言中,以下哪个循环结构不是基于条件的循环?A. for循环B. while循环C. do-while循环D. goto语句(答案)二、以下哪个选项不是for循环的控制表达式?A. 初始化表达式B. 循环条件表达式C. 循环体D. 迭代表达式(答案:C是循环体,不是控制表达式)三、在C语言的while循环中,循环条件通常是一个什么类型的表达式?A. 赋值表达式B. 关系表达式或逻辑表达式(答案)C. 算术表达式D. 逗号表达式四、以下哪个选项描述的do-while循环的特点是不正确的?A. 循环体至少执行一次B. 循环条件在循环体之后判断C. 循环条件为真时,循环继续执行D. 循环条件通常是一个赋值表达式(答案)五、在C语言中,如何跳出当前所在的循环体?A. 使用continue语句B. 使用break语句(答案)C. 使用return语句D. 使用goto语句六、以下哪个选项不是使用循环结构时需要注意的问题?A. 循环条件的设置B. 循环体的设计C. 循环变量的初始化(答案:虽然重要,但相比其他选项更偏向于编程习惯)D. 避免无限循环的发生七、在嵌套循环中,如何跳出最外层的循环?A. 使用多次break语句B. 在最外层循环中使用goto语句配合标签跳出(答案)C. 使用continue语句D. 无法直接跳出,需要重新设计循环结构八、以下哪个选项描述的for循环的语法结构是不正确的?A. for(初始化表达式; 循环条件表达式; 迭代表达式) 循环体;B. for(循环条件表达式; 初始化表达式; 迭代表达式) 循环体;(答案)C. for(;;) 循环体; // 相当于一个无限循环D. for(初始化表达式; ; 迭代表达式) { 如果条件满足则执行循环体; } // 需要内部判断条件九、在C语言中,continue语句的作用是?A. 跳出当前循环体,继续执行下一轮循环(答案,但描述略有歧义,实际上是结束当前迭代,进入下一次迭代条件判断)B. 跳出当前函数C. 跳出所有循环D. 结束整个程序十、以下哪个选项不是循环结构在程序设计中的应用场景?A. 重复执行相同的操作直到满足某个条件B. 遍历数组或集合中的每个元素C. 实现递归算法(答案)D. 计算累加、累乘等需要重复计算的问题。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C)循环体语句一次也不执行D)循环体语句执行一次
5.程序段如下
int k=1;
while(!k==0){k=k+1;printf("%d\n",k);}
说法正确的是。(1级)
A)while循环执行2次B)循环是无限循环
C)循环体语句一次也不执行D)循环体语句执行一次
6.以下for循环是。(1级)
for(a=0,b=0;(b!=123)&&(a<=4);a++)
&
*
二、填空题
1.while语句的特点是(1),do-while语句的特点是(2)。(0级)
2.将for(表达式1;表达式2;表达式3)语句改写为while语句是。(0级)
3.break语句的功能是。(0级)
4.break语句只能用于(1)语句和(2)语句中。(0级)
5.continue语句的作用是,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定。(0级)
printf(“%d,%d”,y,x);
A)20, 7B)6, 12
C)20, 8D)8, 20
27.以下程序的运行结果是:。(03试题)
main( )
{ int a=2,i;
for(i=0;i<3;i++) printf(“%4d”,f(a) ) ; }
f( int a)
{ int b=0,c=3;
{for(;;){if((i%10)==0) break;else i--;}
i+=11;a+=i;
}
printf("%d\n",a);
}
A)21B)32C)33D)11
17.当输入为"quert?"时,下面程序的执行结果是。(1级)
#include<stdio.h>
main()
{char c;
c=getchar();
for ( n = 10; n > 7; n-- )
printf “%d\n”, n ) ;
A)10 B)9 C)10 D)9
9 8 9 8
8 7 8 7
7 6
24.循环语句中的for语句,其一般形式如下:
for(表达式1;表达式2;表达式3)语句
其中表示循环条件的是。(01~02第二学期试题)
A)表达式1B)表达式2C)表达式3D)语句
switch (I%5 )
{ case 0: printf (“*”); break;
case 1: printf (“#”); break;
default : printf (“\n”);
case 2: printf (“&”); break; }
}
A)#&&* B)#& C)# D)#&
& &
&* & *
A)0 B)1 C);D),
3.for语句中的表达式可以部分或全部省略,但两个不可省略。但当三个表达式均省略后,因缺少条件判断,循环会无限制地执行下去,形成死循环。(0级)
A)0 B)1 C);D),
4.程序段如下
int k=-20;
while(k=0)k=k+1;
则以下说法中正确的是。(1级)
A)while循环执行20次B)循环是无限循环
{if(i%2)printf("#");
else continue;
printf("*");
}
printf("$\n");
}
A)*#*#*#$B)#*#*#*$C)*#*#$D)#*#*$
15.以下程序的输出结果是。(1级)
main()
{int a=0,i;
for(i=;i<5;i++)
{swich(i)
do
{printf("%3d",x-=2);
}while(--x);
}
A)1 B)30 3 C)1 -2 D)死循环
12.定义如下变量:
int n=10;
则下列循环的输出结果是。(1级)
while(n>7)
{n--;
printf("%d\n",n);
}
A)10B)9C)10D)9
9898
8787
76
13.以下程序的输出结果。(1级)
main()
{int n=0;
while(n++<=1)
printf("%d\t",n);
printf("%d\n",n);
}
A)1 2 3B)0 1 2C)1 1 2D)1 2 2
14.以下程序的输出结果是。(1级)
main()
{int i;
for(i=1;i<=5;i++)
6.在循环中,continue语句与break语句的区别是:continue语句只是(1),break语句是(2)。(0级)
7.循环的嵌套是指。(0级)
8.要使以下程序段输出10个整数,请填入一个整数:
for(i=0;i<=;printf("%d\n",i+=2));
9.goto语句的用途是和。(0级)
31.以下程序段。(04~05第二学期试题)
x=-1; do { x=x*x;} while(!x);
A)是死循环B)循环执行二次
C)循环执行一次D)有语法错误
32.下面程序的运行结果是:。(往届试题)
#include <stdio.h>
main( )
{ int y=10;
do { y--; } while(--y) ;
while((c=getchar())!='?')putchar(++c);
}
A)QuertB)vfsuC)quert?D)rvfsu?
18.当输入为"quert?"时,下面程序的执行结果是。(1级)
#include<stdio.h>
main()
{while(putchar(getchar())!='?');}
10.while语句的特点是,do_while语句的特点是。(0级)
11.把for(表达式1;表达式2;表达式3);改写为等价的while语句为。(0级)
12.语句标号由标识符表示,由,和组成。第一个字符必须是字母或下划线。(0级)
三、程序填空题
1.以下程序的功能是:从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。请填空。
{case 0:
case 3:a+=2;
case 1:
case2:a+=3;
default:a+=5;
}
}
printf("%d\n",a);
}
A)31B)13C)10D)20
16.以下程序的输出结果是。(1级)
#include <stdio.h>
main()
{int i=0,a=0;
while(i<20)
while ( !x != 0 ) s += ++ x ;
printf (“%d”, s ) ;
A)运行程序段后输出0
B)运行程序段后输出1
C)程序段中的控制表达式是非法的
D)程序段执行无限次
36.下面程序的运行结果是:。(往届试题)
#include <stdio.h>
main( )
{ intI;
for (I= 1;I<=5;I++)
C)3 5 7 D)3 6 9
34.以下程序的运行结果是:。(往届试题)
main( )
{ int n=4;
while(n--)
printf (“%2d”,--n);}
A)2 0 B)3 1
C)3 2 1 D)2 1 0
35.设有以下程序段,则执行该程序后为:。(往届试题)
int x = 0, s = 0 ;
10.执行下面的程序后,a的值为。(1级)
main()
{int a,b;
for(a=1,b=1;a<=100;a++)
{if(b>=20)break;
if(b%3==1)
{b+=3;
continue;
}
b-=5;
}
}
A)7B)8C)9D)10
11.以下程序的输出结果。(1级)
main()
{
int x=3;
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);
main()
{float x,amax,amin;
scanf("%f",&x);
amax=x;
amin=x;
while(1)
{if(x>amax)amax=x;
if(2)amin=x;
printf(“%d\n”,y--); }
相关文档
最新文档