简单的C语言选择与循环结构10个编程练习题.

合集下载

c语言顺序结构和选择结构练习题

c语言顺序结构和选择结构练习题

C语言循环结构前的练习一、选择题:(2’*25=50)1、以下程序的输出结果为( C )# include “stdio.h”main(){ int i=4,a;a=i++;printf(“a=%d,i=%d”,a,i);}A)a=4,i=4 B)a=5,i=4 C)a=4,i=5 D)a=5,i=52、以下叙述中正确的是( C )。

A)C语言程序总是从第一个定义的函数开始执行。

B)在C语言程序中,要调用的函数必须在main()函数中定义C)C语言程序总是从main()函数开始执行。

D)C语言程序中的main()函数必须放在程序的开始部分。

3、下列选项中不正确的实型常量是( B )A)7.375E-1 B)0.3108e 2 C)-44.44 D)123e-24、在C程序中,可以作为用户标识符的一组标识符是( B )A)void define B)as_b3 _224 ElseC)Switch -wer case D)4b DO SIG5、 int类型变量所占字节数是( D )A)1 B)2 C)3 D)46、以下选项中合法的用户标识符是( B )。

A)long B) _2test C)3dmax D) a.dat7、以下有4组用户标识符,其中合法的一组是( C )。

A) for –sub case B) 4d do sizeC) f2_g3 If abc D) WORD void define8、经char w; int x; float y; double z;说明后表达式 w*x+z-y的类型是( D )。

A) float B) char C) int D) double9、下述程序的输出结果是( C )main(){ int a=-1,b=4,k;k=(a++<=0)&&(!(b--<=0));printf(“%d,%d,%d”,k,a,b);}A)0,0,3 B)0,1,2 C)1,0,3 D)1,1,2 10、定义int n=5;下面语句的输出结果为( B )。

C语言循环习题答案

C语言循环习题答案

循环习题集锦一.选择题1.for(i=0;i<10;i++);结束后,i的值是;(10)A 9B 10C 11D 122.下面程序的循环次数是:(D)int k=0;while(k<10){if(k<1) continue;if(k==5) break;k++;}A. 5 B 6 C 4 D 死循环,不能确定循环次数3.下面程序的输出结果是(10)main(){int s,k;for(s=1,k=2;k<5;k++)s+=k;printf(“%d\n”,s);}A 1B 9C 10D 154.要使下面程序输出10个整数,则在下画线处填入正确的数是:(c)for(i=0;i<= ;)printf(“%d\n”,i+=2);A 9B 10C 18D 205.运行下面程序:(B)main(){ int i=10,j=0;do{ j=j+i;i--;}while(i>5);printf(“%d\n”,j);}输出结果是:A 45B 40C 34D 55 6.运行下面程序#include “stdio.h”main(){ int k=0,a=1;while(k<10){for( ; ;){ if((k%10)==0)break;elsek--;}k+=11;a+=k;}printf(“%d %d\n”,k,a);}则输出的结果是(C)A 21 32B 21 33C 11 12D 10 117.以下叙述正确的是:(D)A.do---while语句构成的循环不能用其他语句构成的循环来代替。

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

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

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

8.有如下程序:main(){ int x=3;do{printf(“%d”,x--);}while(!x);}该程序的执行结果是:(C)A 3 2 1B 2 1 0C 3D 29.若k为整型变量,则下面while循环执行的次数为:(A)k=10;while(k==0) k=k-1;A 0B 1C 10 D无限次10.下面有关for循环的正确描述是(D)A.for循环只能用于循环次数已经确定的情况B.for循环是先执行循环体语句,后判断表达式C.在for循环中,不能用break语句跳出循环体。

C语言初学者练习题目10条

C语言初学者练习题目10条

C语言初学者练习题目10条1. 关于C语言初学者练习题目10条在学习编程语言的过程中,练习题目是一个重要的环节,可以帮助初学者巩固基本知识和提升解决问题的能力。

本文将介绍10个适合C语言初学者的练习题目,并分析每个题目的解题思路。

题目一:输出Hello, World!这是C语言中最基础的练习题目,通过编写一个简单的程序来输出"Hello, World!",帮助初学者熟悉C语言的基本语法和编译运行过程。

题目二:计算两个整数之和编写一个程序,接收用户输入的两个整数,并输出它们的和。

这个练习可以让初学者熟悉C语言的基本输入输出操作和基本的数学运算。

题目三:判断一个数是否为素数编写一个程序,接收用户输入的一个整数,并判断该数是否为素数。

这个练习可以让初学者熟悉使用循环和条件语句进行判断,并学习如何优化算法以提高判断效率。

题目四:计算数组元素的平均值编写一个程序,接收用户输入的一个整型数组,并计算出数组元素的平均值。

这个练习可以让初学者熟悉数组的基本使用和循环的结合运用。

题目五:查找数组中的最大值和最小值编写一个程序,接收用户输入的一个整型数组,并找出数组中的最大值和最小值。

这个练习可以让初学者学习如何定义和使用函数,并加深对数组的理解。

题目六:实现简单的字符串翻转编写一个程序,接收用户输入的一个字符串,并将其翻转输出。

这个练习可以让初学者学习如何处理字符串类型的数据,并锻炼对数组和循环的综合运用能力。

题目七:实现简单的冒泡排序编写一个程序,接收用户输入的一个整型数组,并使用冒泡排序算法对数组进行排序。

这个练习可以让初学者深入理解冒泡排序算法的原理,并学习如何进行数组的元素交换。

题目八:实现简单的查找算法编写一个程序,接收用户输入的一个整型数组和一个目标值,在数组中查找目标值并输出其下标。

这个练习可以让初学者学习不同查找算法的实现原理,并熟悉如何使用循环进行遍历操作。

题目九:实现简单的递归算法编写一个程序,使用递归算法计算斐波那契数列的第n项值,并将其输出。

C语言选择与循环控制结构常见习题与答案

C语言选择与循环控制结构常见习题与答案

1.猜数字小游戏:每次程序随机生成一个数字,用户输入数字进行猜测,十回合内猜出数据则胜利,否则失败,可重复游戏。

代码如下:#include <stdio.h>#include <stdlib.h>#include <math.h>int main(){int magic;int guess;int count;int ret;char reply;srand(time(NULL));do{magic = rand()%100+1; //产生1到100之间的随机数//count = 0;do{do{printf("Please guess a magic number:");ret = scanf("%d",&guess);if(ret!=1){while(getchar()!='\n');}}while(ret!=1||guess<1||guess>100); //如果输入不是1到100之间的数字则连续读取//count = count+1;if(guess>magic)printf("Wrong!Too big!\n");else if (guess<magic)printf("Wrong!Too small!\n");else{printf("Right!\n");printf("The number is :%d\n",magic);}}while(guess!=magic&&count<10);if (magic==guess)printf("count = %d\n",count);if (magic!=guess)printf("You lose!");printf("Do you want to continue(Y/N or y/n)?\n");scanf(" %c",&reply);}while((reply=='y')||(reply=='Y'));return 0;}2.任意时间时钟时针与分针的夹角:钟面上的时针和分针之间的夹角总是在 0 度~ 359 度之间。

C语言循环习题答案

C语言循环习题答案

循环习题集锦一.选择题1. for(i=0;i<10;i++); 结束后,i 的值是;(10)A 9B 10C 11D 122. 下面程序的循环次数是:(D)int k=0;while(k<10){if(k<1) continue;if(k==5) break;k++;}A. 5 B 6 C 4 D 死循环,不能确定循环次数3. 下面程序的输出结果是(10)mai n(){int s,k;for(s=1,k=2;k<5;k++)s+=k;printf( “ %d\n” ,s);}A 1B 9C 10D 154. 要使下面程序输出10个整数,则在下画线处填入正确的数是:(c) for(i=0;i<= ;) ___printf( “ %d\n” ,i+=2);A 9B 10C 18D 205. 运行下面程序:(B)mai n(){ int i=10,j=0;do{ j=j+i;i--;}while(i>5);printf( “ %d\n” ,j);}输出结果是:A 45B 40C 34D 556. 运行下面程序#include “ stdio.h ”main() { int k=0,a=1;while(k<10){for( ; ;){ if((k%10)==0) break;else k--;}k+=11;a+=k;}printf( “%d %d\n”,k,a);}则输出的结果是( C)A 21 32B 21 33C 11 12D 10 11 7.以下叙述正确的是:( D)A.do---while 语句构成的循环不能用其他语句构成的循环来代替。

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

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

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

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、输入3个整数,排序后输出。

#include <stdio.h>void main(){int x,y,z,t;scanf("%d%d%d",&x,&y,&z);if (x>y){t=x;x=y;y=t;} /*交换x,y的值*/if(x>z){t=z;z=x;x=t;} /*交换x,z的值*/if(y>z){t=y;y=z;z=t;} /*交换z,y的值*/printf("small to big: %d %d %d\n",x,y,z);}2、求解一元二次方程ax2+bx+c=0。

#include <stdio.h>#include <math.h>void main(){double a,b,c,deta,x1,x2;printf("Enter a,b,c:");scanf("%lf%lf%lf",&a,&b,&c);if(fabs(a)>1e-6){deta=b*b-4*a*c;if(deta>0){x1=-b/(2*a)+sqrt(deta)/(2*a);x2=-b/(2*a)-sqrt(deta)/(2*a);;printf("有两个不同的实根:x1=%.2f ,x2=%.2f\n",x1,x2);}else if(deta==0){x1=x2=-b/(2*a);printf("有两个相同的根:x1=x2=%.2f\n",x1);}else{x1=-b/(2*a);x2=sqrt(-deta)/(2*a);printf("有两个虚根:x1=%.2f + %.2f*i,x2=%.2f - %.2f*i\n",x1,x2,x1,x2);}}elseprintf("二次项系数为0,不是一元二次方程!");}3、已知银行整存整取存款不同期限的月息利率分别为:0.315% 期限一年0.330% 期限二年0.345% 期限三年0.375% 期限五年0.420% 期限八年要求输入存钱的本金和期限,求到期时能从银行得到的利息与本金的合计。

C语言循环习题答案

C语言循环习题答案

循环习题集锦一. 选择题1. for(i=0;i<10;i++);结束后,i 的值是;(10)A 9B 10C 11D 122.下面程序的循环次数是:(D)int k=0;while(k<10){if(k<1) continue;if(k==5) break;k++;)A. 5 B 6 C 4 D死循环,不能确定循环次数3.下面程序的输出结果是(10)main(){int s,k;for(s=1,k=2;k<5;k++)s+=k;printf("%d\n”,s))A 1B 9C 10D 154.要使下面程序输出10个整数则在下画线处填入正确的数是(c)for(i=0;i<=;)printf("%d\n”,i+=2);A 9B 10C 18D 205.运行下面程序:(B)main(){ int i=10,j=0;do{ j=j+i;i--;}while(i>5);printf("%d\n”,j);}输出结果是:A 45B 40C 34D 556.运行下面程序#include “stdio.h”main(){ int k=0,a=1;while(k<10){for( ; ;){ if((k%10)==0)break;elsek--;)k+=11;a+=k;)printf("%d %d\n”,k,a);)则输出的结果是(C)A 21 32B 21 33C 11 12D 10 117.以下叙述正确的是:(D)A.do---while语句构成的循环不能用其他语句构成的循环来代替。

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

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

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

8.有如下程序:main(){ int x=3;do{printf("%d”,x--);}while(!x);)该程序的执行结果是:(C)A 3 2 1B 2 1 0C 3D 29.若k为整型变量,则下面while循环执行的次数为:(A)k=10;while(k==0) k=k-1;A 0B 1C 10 D无限次10.下面有关for循环的正确描述是(D)A.for循环只能用于循环次数已经确定的情况B.for循环是先执行循环体语句,后判断表达式C.在for循环中,不能用break语句跳出循环体。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

简单的C语言选择与循环结构10个编程练习题
1、以下程序的输出结果是___________________:
# include <stdio.h>
void main(){
int k;
for (k=2;k<6;k++,k++) printf(“##%d”,k);
}
2、以下程序的输出结果是___________________:
# include <stdio.h>
void main(){
int y=9;
for( ; y>4 ; y- -) if (y % 3 == 0) printf(“%d”,- -y);
}
3、以下程序的输出结果是___________________:
#include <stdio.h>
main( )
{ char c1, c2;
for(c1=’0’,c2=’9’;c1<c2;c1++,c2--) printf("%c%c", c1, c2 ); printf("\n" ); }
4、用循环语句编程输出一行20个字符,其中第
5、12个字符为“+”,其余
的字符为“*”(用条件语句i==5 and i==12输出*,否则输出+):
****+******+********。

5、用循环语句编程输出如下图形(当行数为2时输出“+”,否则输出“#”):####################
++++++++++++++++++++
####################
####################
1,(x>0)
6.用if语句编程,从键盘输入一个x,计算y值 y= 0,(x=0)。

-1,(x<0)
7、求sum=52+72+92+……+152
8、求sum=1/5+1/6+1/7+1/8+…+1/15
9、编写程序(提示字符变量ch从’C’到字符’N’),输出CDEFGHIJKLMN
10、打印九九表(提示:用双重循环,关键代码:printf("%d*%d=%-d",i,j,i*j);/*-3d表示左对齐,占3位*/):
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
……
9*1=9 9*2=18 ………………9*9=81。

相关文档
最新文档