C语言选择结构考试试题
c语言选择结构程序设计习题册答案

第五章选择结构程序设计基础练习(A)一、填空题1.关系表达式的运算结果是逻辑值。
C语言没有逻辑型数据, 以1 代表“真”, 以0代表“假”。
2.逻辑运算符!是单目运算符, 其结合性是由右结合性。
3.C语言提供的三种逻辑运算符是&& 、|| 、! 。
其中优先级最高的为! ,优先级最低的为| | 。
4.逻辑运算符两侧的运算对象不仅可以是0和1, 或者是0和非0的整数, 也可以是任何类型的数据。
系统最终以0 和非0 来鉴定它们属于“真”或“假”。
5、设y为int型变量, 请写出描述“y是偶数”的表达式(y%2==0) 。
6、设x, y, z均为int型变量, 请写出描述“x或y中有一个小于z”的表达式x<z||y<z 。
7、条件“2<x<3或x<-10”的C语言表达式是x<-10||x>2&&x<3。
8、判断char型变量ch是否为大写字母的对的表达式是(ch>=‘A’)&&(ch<=‘Z’)。
9、当a=3,b=2,c=1时, 表达式f=a>b>c的值是0 。
10、当a=5,b=4,c=2时, 表达式a>b!=c的值是 1 。
11.已知A=7.5,B=2,C=3.6, 表达式A>B&&C>A||A<B&&!C>B的值是0 。
12.若a=6,b=4,c=2, 则表达式!(a-b)+c-1&&b+c/2的值是 1 。
13、有int x,y,z;且x=3,y=-4,z=5, 则表达式(x&&y)==(x||z)的值为 1 。
14、有int x,y,z;且x=3,y=-4,z=5, 则以下表达式的值为 1 。
!(x>y)+(y!=z)||(x+y)&&(y-z)15.有int a=3,b=4,c=5,x,y;, 则以下表达式的值为0 。
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 语言选择结构考试试题一、选择题(每题2分,共30分)1. 有如下程序: main (){ int x=1,a=0,b=0; switch (x ){ case 0: b++; case 1: a++; case 2: a++;b++; }printf ("a=%d,b=%d \n",a,b );} 该程序的输出结果是 A )a=2,b=1 B )a=1,b=1 C )a=1,b=0 D )a=2,b=22. 有以下程序 main () { int i=1,j=1,k=2; if ((j++||k++)&&i++)printf ("%d,%d,%d \n",i,j,k );} 执行后输出结果是 A )1,1,2 B )2,2,1 C )2,2,2 D )2,2,33. 有如下程序 main () { float x=2.0,y; if (x<0.0)y=0.0; else if (x<10.0)y=1.0/x; else y=1.0;printf ("%f \n",y );} 该程序的输出结果是 A )0.000000 B )0.250000 C )0.500000 D )1.000000 4. 设int x=1,y=1;表达式(!x||y--)的值是 A )0 B )1 C )2D )-15. 若运行时给变量x 输入12,则以下程序的运行结果是 main () { int x,y;scanf ("%d",&x ); y=x>12?x+10:x-12;printf ("%d \n",y );} A )0 B )22 C )12D )106. 在C 程序中,判逻辑值时,用“非0”表示逻辑值“真”, 又用“0”表示逻辑值“假”。
在求逻辑值时,用()表示逻辑表达式值为“真”, 又用()表示逻辑表达式值为“假”。
c语言考试题型及答案

c语言考试题型及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. variable-2D. variable$2答案:B3. C语言中,哪个函数用于计算并返回字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A4. 在C语言中,以下哪个选项表示逻辑与操作?A. &&B. ||C. !D. %5. 下列哪个选项是C语言中的正确整型常量?A. 012B. 0x1AC. 1.2e3D. 0b1010答案:B6. 在C语言中,哪个关键字用于声明一个函数?A. functionB. defC. declareD. int答案:D7. C语言中,哪个库函数用于输出格式化的字符串到控制台?A. printf()B. scanf()C. fgets()D. fputs()答案:A8. 下列哪个选项是C语言中的合法浮点型常量?A. 3.14B. .14C. 3e-10D. All of the above答案:D9. 在C语言中,哪个关键字用于声明一个变量为静态存储类别?B. externC. registerD. auto答案:A10. C语言中,哪个运算符用于计算两个整数的差并取模?A. %B. /C. -D. ==答案:A二、填空题(每题2分,共20分)1. 在C语言中,用于定义一个数组的关键字是________。
答案:array2. C语言中,用于声明一个指针变量的关键字是________。
答案:pointer3. C语言中,用于声明一个函数的返回类型是________。
答案:return type4. C语言中,用于声明一个变量为全局变量的关键字是________。
数据结构c语言版试题及答案

数据结构c语言版试题及答案一、选择题(每题2分,共10分)1. 在C语言中,以下哪个关键字用于定义结构体?A. structB. unionC. enumD. typedef答案:A2. 若有一个结构体数组,下列哪个函数可以用来初始化数组中的每个元素?A. memsetB. memcpyC. strcpyD. bzero答案:A3. 在C语言中,以下哪个函数用于动态分配内存?A. mallocB. callocC. reallocD. all of the above答案:D4. 对于一个链表,以下哪个操作是正确的?A. 插入节点B. 删除节点C. 遍历链表D. all of the above答案:D5. 在C语言中,以下哪个函数用于释放动态分配的内存?A. freeB. mallocC. callocD. realloc答案:A二、填空题(每题3分,共15分)1. 结构体定义的关键字是______。
答案:struct2. 在C语言中,动态分配内存失败时,malloc函数返回______。
答案:NULL3. 单链表的头节点指针通常初始化为______。
答案:NULL4. 双向链表中,每个节点包含______个指针。
答案:两个5. 树的深度优先遍历包括______、中序遍历和后序遍历。
答案:前序遍历三、简答题(每题5分,共20分)1. 请简述C语言中结构体和联合体的区别。
答案:结构体(struct)可以包含不同类型的数据,并且可以有多个实例;联合体(union)可以包含不同类型的数据,但是只能有一个实例,即在任意时刻只能存储其中一个成员的值。
2. 动态内存分配的优点是什么?答案:动态内存分配允许程序在运行时根据需要分配内存,这样可以更有效地使用内存资源,并且可以创建大小不固定的数据结构。
3. 链表相比于数组有哪些优点?答案:链表的优点包括动态大小,可以灵活地插入和删除节点,不需要预先知道数据的大小。
数据结构试题及答案c语言版

数据结构试题及答案c语言版一、选择题(每题2分,共20分)1. 在C语言中,以下哪个选项是正确的链表定义?A. struct Node { int data; struct Node *next; };B. struct Node { int data; Node *next; };C. struct Node { int data; struct Node *next; } *Node;D. struct Node { int data; Node *next; };答案:A2. 下列关于栈的描述中,错误的是?A. 栈是一种后进先出(LIFO)的数据结构。
B. 栈的插入操作称为push。
C. 栈的删除操作称为pop。
D. 栈可以存储任意数量的数据。
答案:D3. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A4. 下列关于队列的描述中,正确的是?A. 队列是一种先进先出(FIFO)的数据结构。
B. 队列只能从队尾进行插入操作。
C. 队列的插入操作称为pop。
D. 队列的删除操作称为push。
答案:A5. 在C语言中,以下哪个函数用于创建一个动态数组?A. mallocB. callocC. reallocD. all of the above答案:D6. 下列关于二叉树的描述中,错误的是?A. 二叉树的每个节点最多有两个子节点。
B. 二叉树的子节点被称为左子树和右子树。
C. 二叉树的遍历方式包括前序、中序、后序。
D. 二叉树的每个节点只能有一个子节点。
答案:D7. 在C语言中,以下哪个函数用于释放动态分配的内存?A. freeB. mallocC. callocD. realloc答案:A8. 下列关于图的描述中,错误的是?A. 图是由顶点和边组成的数据结构。
B. 图的边可以是有向的,也可以是无向的。
C. 图的顶点可以是孤立的,没有边与之相连。
C语言选择结构程序设计练习题

C语⾔选择结构程序设计练习题第四章选择结构程序设计⼀、填空1.在C语⾔中,表⽰逻辑“真”值⽤_________。
2.得到整型变量a的⼗位数字的表达式为_________。
3.表达式:(6>5>4)+(float)(3/2)的值是_________。
4.表达式:a=3,a-1‖--a,2*a的值是_________。
(a是整型变量)5.表达式:(a=2.5-2.0)+(int)2.0/3的值是_________。
(a是整型变量)6.C语⾔编译系统在给出逻辑运算结果时,以数值_________代表“真”,以_________代表“假”;但在判断⼀个量是否为“真”时,以_________代表“假”,以_________代表真。
7.当m=2,n=1,a=1,b=2,c=3时,执⾏完d=(m=a!=b)&&(n=b>c)后,n的值为_________,m的值为_________。
8.若有int x,y,z;且x=3,y=-4,z=5,则表达式:!(x>y)+(y!=z)||(x+y)&&(y-z)的值为_________。
⼆、编程:1.企业发放的奖⾦根据利润提成。
利润(i)低于或等于10万元时,奖⾦可提10%;利润⾼于10万元,低于20万元时,低于10万元的部分按10%提成,⾼于10万元的部分,可提成7.5%;20万到40万之间时,⾼于20万元的部分,可提成5%;40万到60万之间时⾼于40万元的部分,可提成3%;60万到100万之间时,⾼于60万元的部分,可提成1.5%,⾼于100万元时,超过100万元的部分按1%提成,从键盘输⼊当⽉利润i,求应发放奖⾦总数?2.输⼊三个整数x,y,z,请把这三个数由⼩到⼤输出。
3.输⼊某年某⽉某⽇,判断这⼀天是这⼀年的第⼏天?4.本程序演⽰从键盘输⼊x的值,计算并打印下列分段函数的值。
y=0(x<60)y=1(60<=x<70)y=2(70<=x<80)y=3(80<=x<90)y=4(x>=90)5.在显⽰器上显⽰⼀个菜单程序的模型。
大一c语言选择考试题及答案

大一c语言选择考试题及答案一、单项选择题(每题2分,共20分)1. C语言中,用于定义整型变量的关键字是:A. intB. floatC. doubleD. char答案:A2. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. _variableD. variable-2答案:B3. C语言中,用于计算两个数的和的运算符是:A. +B. -C. *D. /答案:A4. 在C语言中,以下哪个选项不是控制语句?A. ifB. switchC. forD. printf答案:D5. C语言中,用于定义字符型变量的关键字是:A. intB. charC. floatD. double答案:B6. 在C语言中,以下哪个选项是正确的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello World'"D. 'Hello World'答案:A7. C语言中,用于定义浮点型变量的关键字是:A. intB. charC. floatD. double答案:C8. 在C语言中,以下哪个选项是正确的数组声明?A. int numbers[];B. int numbers[10];C. int numbers[10] = {0};D. All of the above答案:D9. C语言中,以下哪个选项是正确的函数声明?A. int add(int a, int b);B. int add();C. int add(int a, b);D. int add(int a, int b) {}答案:A10. C语言中,以下哪个选项是正确的循环结构?A. forB. whileC. do-whileD. All of the above答案:D二、多项选择题(每题3分,共15分)11. C语言中,以下哪些选项是合法的变量名?A. _myVarB. 2myVarC. myVar2D. my-var答案:A, C12. C语言中,以下哪些选项是合法的常量?A. 123B. 3.14159C. 'A'D. "Hello"答案:A, B, C, D13. C语言中,以下哪些选项是合法的运算符?A. +=B. &&C. ||D. %答案:B, C, D14. C语言中,以下哪些选项是合法的控制语句?A. ifB. elseC. whileD. break答案:A, B, C, D15. C语言中,以下哪些选项是合法的函数参数传递方式?A. 值传递B. 地址传递C. 指针传递D. 引用传递答案:A, B, C三、填空题(每题4分,共20分)16. 在C语言中,声明一个整型变量并初始化为10,可以使用语句:________。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C 语言选择结构考试试题
一、选择题(每题2分,共30分)
1. 有如下程序: main ()
{ int x=1,a=0,b=0; switch (x )
{ case 0: b++; case 1: a++; case 2: a++;b++; }
printf ("a=%d,b=%d \n",a,b );} 该程序的输出结果是 A )a=2,b=1 B )a=1,b=1 C )a=1,b=0 D )a=2,b=2
2. 有以下程序 main () { int i=1,j=1,k=2; if ((j++||k++)&&i++)printf ("%d,%d,%d \n",i,j,k );} 执行后输出结果是 A )1,1,2 B )2,2,1 C )2,2,2 D )2,2,3
3. 有如下程序 main () { float x=2.0,y; if (x<0.0)y=0.0; else if (x<10.0)y=1.0/x; else y=1.0;
printf ("%f \n",y );} 该程序的输出结果是 A )0.000000 B )0.250000 C )0.500000 D )1.000000 4. 设int x=1,y=1;表达式(!x||y--)的值是 A )0 B )1 C )2
D )-1
5. 若运行时给变量x 输入12,则以下程序的运行结果是 main (){ int x,y;
scanf ("%d",&x ); y=x>12?x+10:x-12;
printf ("%d \n",y );} A )0 B )22 C )12
D )10
6. 在C 程序中,判逻辑值时,用“非0”表示逻辑值“真”,又用“0”表
示逻辑值“假”。
在求逻辑值时,用()表示逻辑表达式值为“真”,又用()表示逻辑表达式值为“假”。
A )1 0
B )0 1
C )非0 非0
D )1 1
7. 若已定义:int a=25,b=14,c=19;以下三目运算符(?:)所构成语句的执行后a<=25&&b--<=2&&c?printf ("***a=%d,b=%d,c=%d \n",a,b,c ):printf ("###a=%d,b=%d,c=%d \n",a,b,c );程序输出的结果是
A )***a=25,b=13,c=19
B )***a=26,b=14,c=19
C )### a=25,b=13,c=19
D )### a=25,b=14,c=19 8. 有如下程序 main ()
{ float x=2.0,y; if (x<0.0)y=0.0; else if (x>10.0)y=1.0/x; else y=1.0;
printf ("%f \n",y );} 该程序的输出结果是A )0.000000 B )0.250000 C )0.500000 D )1.000000
9. 以下4个选项中,不能看做一条语句的是
A );
B )a=5,b=2.5,c=3.6;
C )if (a<5);
D )if (b!=5)x=2;y=6; 10. 能正确表示逻辑关系:“a ≥10或a ≤0”的C 语言表达式是 A )a>=10 or a<=0 B )a>=0|a<=10 C )a>=10 &&a<=0 D )a>=10‖a<=0 11. 有如下程序 main ()
{ int a=2,b=-1,c=2; if (a<b ) if (b<0)c=0; else c++;
printf ("%d \n",c );} 该程序的输出结果是 A )0 B )1 C )2 D )3
12. 设x ,y 和z 都是int 型变量,且x=3,y=4,z=5,则下面表达式中,值为0的表达式是
A )x&&y
B )x<=y
C )x||++y&&y-z
D )!(x<y&&!z||1)
13. 若有条件表达式(exp )?a++:b--,则以下表达式中能完全等价于表达式(exp )
的是 A )(exp==0) B )(exp!=0) C )(exp==1)
D )(exp!=1)
14. 以下程序的输出结果是
main ()
{ int a=4,b=5,c=0,d; d=!a&&!b||!c;
利川职校201___级_____________班姓名___________ 考号____________________
…………………………装……………………………………………订…………………………………………线…………………………printf("%d\n",d);}
A)1 B)0 C)非0的数D)-1
15.设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后n的值是
A)1 B)2 C)3 D)4
16.设x,y,t均为int型变量,执行语句:
x=y=3;
t=++x||++y;
完成后,y的值为
A)不确定B)4 C)3 D)1
17.请阅读以下程序:
main()
{ int a=5,b=0,c=0;
if(a=b+c)printf("***\n");
else printf("$$$\n");} 以上程序
A)有语法错不能通过编译
B)可以通过编译但不能通过连接
C)输出***
D)输出$$$
18.当k的值不为0时,在下列选项中能够将k的值赋给变量m,n的
是
A)m=k=n B)(m=k)&&(n=k)
C)(m=k)||(n=k)D)(k=m)&&(n=k)
19.下列程序的运行结果是
#include "stdio.h"
main()
{ int x=-9,y=5,z=8;
if(x<y)
if(y<0)z=0;
else z+=1;
printf("%d\n",z);}
A)6 B)7 C)8 D)9
20、若执行下面的程序时,从键盘上输入5和2,则输出结果是main()
{ int a,b,k;
scanf("%d,%d ",&a,&b);
k=a;
if(a<b)k=a%b;
else k=b%a;
printf("%d\n ",k);}
A)5 B)3 C)2 D)0
二、程序设计(每空20分,共40分)
1、输入三个数a,b,c,要求从小到大输出。
2、要求根据考试成绩的等级输出百分之分数段,A等为85分以上,B等为70~84分,C 等为60~69分,D等为60分一下。
成绩的等级由键盘输入。
答题卡
一、选择题(每题3分,共60分)
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20。