内容正文:
编写说明:江苏省中职职教高考专业综合理论考试-计算机类《C语言程序设计》考点双析卷专辑,依据省教育厅《江苏省中职职教高考专业综合理论考试大纲》编写。“考点双析卷”即围绕一个考点,一份是老师的讲解卷一份是学生的练习卷,助力师生构建“讲练结合”的学习闭环,特别适用于江苏省中职职教高考专业综合理论考试第一轮高考复习教学。
本专辑第18卷精准对标江苏省考纲,考试内容及范围【C语言程序设计】:
(六)选择结构程序设计:掌握if语句;
江苏省中职职教高考专业综合理论考试 计算机类
《C语言程序设计》考点双析卷 第18卷
掌握if语句 学生练习卷
时间:45分钟 总分:100分
班级_______ 姓名_______ 学号_______ 成绩_______
一、单项选择题(本大题共20小题,每题3分,共60分)
1.执行以下程序段的输出结果是( )
int a,b,c;a=2,b=3,c=1;
if(a>b)
if(a>c)printf("%d",a);
else printf("%d",b);printf("end");
A.2 B.3 C.1 D.end
【答案】D
2.执行以下程序段时输入:&<回车>,输出结果是( )
char ch;scanf("%c",&ch);
if(ch>='0'&&ch<='9') printf("it is a number!");
else
if(ch>='A'&&ch<='Z') printf("it is a capital letter!");
else if(ch>='A'&&ch<='Z') printf("it is a lowercase!");
printf("others!");
A.it is a number! B.it is a capital letter!
C.it is a lowercase! D.others!
【答案】D
3.执行以下程序段的输出结果是( )
int x=5;
if(x>7)
{if(x<13) printf("left!
");}
else printf("right!
");
A.left! B.rigth! C.left!right! D.right!left!
【答案】B
4.执行以下程序段的输出结果为( )
int x=9;
if(x>7)
if(x<13) printf("left!
");
else printf("right!
");
A.left! B.rigth! C.left!right! D.right!left!
【答案】A
5.执行以下程序段时输入:8<回车>,输出结果为( )
int w,x=0,y=0;scanf("%d",&w);
if(w==0) printf("error!");
if(w>0) x+=w++;
else
if(w>10) y-=++w;
else printf("%d ",w);
printf("%d,%d,%d",w,x,y);
A.8,8,8 B.9,8,0 C.0,8,9 D.8,0,0
【答案】B
6.执行以下程序段的输出结果是( )
int a=1,b=2,c=3;
if(a%b&&b/c)
if(a++) printf("%d",a);
printf("%d",a);
A.0 B.1 C.2 D.3
【答案】B
7.执行以下程序段的输出结果是( )
int a=8,b=a/2,c=a*a;
if(a>b)
if(a%2==0) printf("%d",a/2);
else
if(c%2!=0)printf("%d",c/a);
printf("%d",b);
A.4 B.64 C.44 D.84
【答案】C
8.执行以下程序段时输入:5<回车>,输出结果是( )
int x;scanf("%d",&x);
if(x!=0)
if(x>0) printf("%d",x+=x++);
else if(x<0)printf("%d",x-=x--);
else printf("error!");
A.12 B.error! C.0 D.10
【答案】D
9.执行以下程序段时输入:5<回车>,输出结果是( )
int x;scanf("%d",&x);
if(x>=1);
if(x!=0) printf("%d",x+=++x);
else printf("%d",x-=x--);
A.5 B.12 C.0 D.-1
【答案】B
10.执行以下程序段时从键盘输入:g<回车>,输出结果是( )
int k;char p;p=getchar();
if(p!=0)
if(p>='0'&&p<='9') k=p-'0';
else if(p>='a'&&p<='f') k=p-'a'+10;
else k=p='A'+10;
printf("%d",k);
A.g B.76 C.h D.75
【答案】D
11.执行以下程序段时从键盘输入:2<回车>,输出结果是( )
int k;char p;p=getchar();
if(p!=0)
if(p>='0'&&p<='9') k=p-'0';
else if(p>='a'&&p<='f') k=p-'a'+10;
else k=p='A'+10;
printf("%d",k);
A.1 B.4 C.10 D.2
【答案】D
12.执行以下程序段后的输出结果是( )
int x=2,y=-1,z=-2;
if(x<y)
if(y<0) z=0;
else z*=5;printf("%d",z);
A.-1 B.0 C.1 D.-2
【答案】D
13.执行以下程序段的输出结果是( )
int a=1,b=2,c=3;
if(a<b)
if(a<c) c=0;else c*=c;printf("%d",c);
A.0 B.1 C.2 D.9
【答案】A
14.执行以下程序段的输出结果是( )
int a=5,p;
if(p=a!=0) printf("%d",p);
else
if(p==1) printf("%d",p+=3);
else printf("%%%d",p++);printf("%d",p);
A.11 B.1 C.111 D.31
【答案】A
15.执行以下程序段的输出结果是( )
int a;scanf("%d",&a);printf("%d",a);
if(a<50) printf("%d",a);
if(a>40)
if(a>45) printf("%d",a);
else printf("%d",a);
A.58585858 B.585858 C.5858 D.58
【答案】C
16.执行以下程序段的输出结果是( )
int a=10,b=4,c=7,s;
if(a<b) s=a*b+2;
else
if(a<c) s=a*c+2;
else
if(b<c) s=b*c+2;
else s=34;
printf("%d",s);
A.30 B.42 C.72 D.34
【答案】A
17.执行以下程序段的输出结果是( )
float x=2.0,y;
if(x<0.0) y=0.0;
else if(x<5.0&&(!x)) y=1.0/(x+2.0);
else if(x<10.0) y=1.0/x;
else
if(x>10.0&&x<20.0) y=1.0/x+(2*x);
else y=30;printf("%.2f",y);
A.0.00 B.0.25 C.1.00 D.0.50
【答案】D
18.执行以下程序的输出结果是( )
int m=5;
if(m++>5)
if(m++>5) printf("%d",m--);
else
if(m!=6) printf("%d",m);
else printf("%d",--m);printf("%d",m+=4);
A.10 B.6 C.5 D.7
【答案】A
19.执行以下程序时从键盘输入:9<回车>,则输出结果是( )
int n;scanf("%d",&n);
if(n++<10)printf("%x",n);
else
if(n==10) printf("%d",n++);else printf("%d",n++);printf("%d",n);
A.10 B.a C.a10 D.1010
【答案】C
20.执行以下程序段的输出结果是( )
int i=0;
if(i==0)
if(++i<0)printf("##");
else
if(i++>++i) printf("$$");
printf("%d",i);
A.3 B.2 C.##2 D.$$3
【答案】A
二、判断题(本大题共5小题,每题3分,共15分)
21.iif (x = 5) 是合法的条件表达式。( )
【答案】正确
22.iif-else if 结构中的条件是按顺序判断的。( )
【答案】正确
23.if 语句的条件表达式可以是任意类型。( )
【答案】错误
24.if-else链中,多个else会与最近的if配对。( )
【答案】正确
【详解】C语言中else默认与最近的未配对if结合。
25.条件运算符?:的结合方向是从右到左,例如a ? b : c ? d : e等价于a ? b : (c ? d : e)。( )
【答案】正确
三、读程序写答案题(本大题共5小题,每题5分,共25分)
26.以下程序的运行结果是( )
#include <stdio.h>
#include<conio.h>
main()
{int a=100,x=10,y=20,m=5,n=1;
if(x<y)
if(y!=10)
if(!m)
a=1;
else
if(n) a=10;
printf("%d
",a);
getch();}
【答案】10
27.以下程序的运行结果是( )
#include <stdio.h>
#include<conio.h>
main()
{int x=1,y=2,z=3,k=0;
if(x==1)
if(y!=2)
if(z==3) k=1;
else k=2;
else if(z!=3) k=3;
else k=4;
else k=5;
printf("%d
",k);
getch();}
【答案】4
28.以下程序的运行结果是( )
#include <stdio.h>
#include<conio.h>
main()
{int a=1,b=3,c=5,d=4,x;
if(a<b)
if(c<d) x=1;
else
if(a<c)
if(b<d) x=2;
else x=3;
else x=6;
else x=7;
printf("%d",x);
getch();}
【答案】2
29.以下程序的运行结果是 。
#include<stdio.h>
#define PR(x,y) printf("%d,%d,",x,y)
void main()
{ int *p1, *p2,*p3;
int x=12,y=6;
p2=&x,p3=&y;
if(*p2>*p3){p1=p2,p2=p3,p3=p1;}
PR(x,y);
PR(*p2,*p3); }
【答案】12,6,6,12,
30.执行以下程序的输出结果是
#include <stdio.h>
#include<conio.h>
main()
{ int a=1, b=0;
if (--a) b++;
else if(a==0) b+=2;
else b+=3;
printf("%d
",b);
getch();}
【答案】2
试卷第6页,共6页
试卷第5页,共6页
学科网(北京)股份有限公司
$
编写说明:江苏省中职职教高考专业综合理论考试-计算机类《C语言程序设计》考点双析卷专辑,依据省教育厅《江苏省中职职教高考专业综合理论考试大纲》编写。“考点双析卷”即围绕一个考点,一份是老师的讲解卷一份是学生的练习卷,助力师生构建“讲练结合”的学习闭环,特别适用于江苏省中职职教高考专业综合理论考试第一轮高考复习教学。
本专辑第18卷精准对标江苏省考纲,考试内容及范围【C语言程序设计】:
(六)选择结构程序设计:掌握if语句;
江苏省中职职教高考专业综合理论考试 计算机类
《C语言程序设计》考点双析卷 第18卷
掌握if语句 学生练习卷
时间:45分钟 总分:100分
班级_______ 姓名_______ 学号_______ 成绩_______
一、单项选择题(本大题共20小题,每题3分,共60分)
1.执行以下程序段的输出结果是( )
int a,b,c;a=2,b=3,c=1;
if(a>b)
if(a>c)printf("%d",a);
else printf("%d",b);printf("end");
A.2 B.3 C.1 D.end
2.执行以下程序段时输入:&<回车>,输出结果是( )
char ch;scanf("%c",&ch);
if(ch>='0'&&ch<='9') printf("it is a number!");
else
if(ch>='A'&&ch<='Z') printf("it is a capital letter!");
else if(ch>='A'&&ch<='Z') printf("it is a lowercase!");
printf("others!");
A.it is a number! B.it is a capital letter!
C.it is a lowercase! D.others!
3.执行以下程序段的输出结果是( )
int x=5;
if(x>7)
{if(x<13) printf("left!
");}
else printf("right!
");
A.left! B.rigth! C.left!right! D.right!left!
4.执行以下程序段的输出结果为( )
int x=9;
if(x>7)
if(x<13) printf("left!
");
else printf("right!
");
A.left! B.rigth! C.left!right! D.right!left!
5.执行以下程序段时输入:8<回车>,输出结果为( )
int w,x=0,y=0;scanf("%d",&w);
if(w==0) printf("error!");
if(w>0) x+=w++;
else
if(w>10) y-=++w;
else printf("%d ",w);
printf("%d,%d,%d",w,x,y);
A.8,8,8 B.9,8,0 C.0,8,9 D.8,0,0
6.执行以下程序段的输出结果是( )
int a=1,b=2,c=3;
if(a%b&&b/c)
if(a++) printf("%d",a);
printf("%d",a);
A.0 B.1 C.2 D.3
7.执行以下程序段的输出结果是( )
int a=8,b=a/2,c=a*a;
if(a>b)
if(a%2==0) printf("%d",a/2);
else
if(c%2!=0)printf("%d",c/a);
printf("%d",b);
A.4 B.64 C.44 D.84
8.执行以下程序段时输入:5<回车>,输出结果是( )
int x;scanf("%d",&x);
if(x!=0)
if(x>0) printf("%d",x+=x++);
else if(x<0)printf("%d",x-=x--);
else printf("error!");
A.12 B.error! C.0 D.10
9.执行以下程序段时输入:5<回车>,输出结果是( )
int x;scanf("%d",&x);
if(x>=1);
if(x!=0) printf("%d",x+=++x);
else printf("%d",x-=x--);
A.5 B.12 C.0 D.-1
10.执行以下程序段时从键盘输入:g<回车>,输出结果是( )
int k;char p;p=getchar();
if(p!=0)
if(p>='0'&&p<='9') k=p-'0';
else if(p>='a'&&p<='f') k=p-'a'+10;
else k=p='A'+10;
printf("%d",k);
A.g B.76 C.h D.75
11.执行以下程序段时从键盘输入:2<回车>,输出结果是( )
int k;char p;p=getchar();
if(p!=0)
if(p>='0'&&p<='9') k=p-'0';
else if(p>='a'&&p<='f') k=p-'a'+10;
else k=p='A'+10;
printf("%d",k);
A.1 B.4 C.10 D.2
12.执行以下程序段后的输出结果是( )
int x=2,y=-1,z=-2;
if(x<y)
if(y<0) z=0;
else z*=5;printf("%d",z);
A.-1 B.0 C.1 D.-2
13.执行以下程序段的输出结果是( )
int a=1,b=2,c=3;
if(a<b)
if(a<c) c=0;else c*=c;printf("%d",c);
A.0 B.1 C.2 D.9
14.执行以下程序段的输出结果是( )
int a=5,p;
if(p=a!=0) printf("%d",p);
else
if(p==1) printf("%d",p+=3);
else printf("%%%d",p++);printf("%d",p);
A.11 B.1 C.111 D.31
15.执行以下程序段的输出结果是( )
int a;scanf("%d",&a);printf("%d",a);
if(a<50) printf("%d",a);
if(a>40)
if(a>45) printf("%d",a);
else printf("%d",a);
A.58585858 B.585858 C.5858 D.58
16.执行以下程序段的输出结果是( )
int a=10,b=4,c=7,s;
if(a<b) s=a*b+2;
else
if(a<c) s=a*c+2;
else
if(b<c) s=b*c+2;
else s=34;
printf("%d",s);
A.30 B.42 C.72 D.34
17.执行以下程序段的输出结果是( )
float x=2.0,y;
if(x<0.0) y=0.0;
else if(x<5.0&&(!x)) y=1.0/(x+2.0);
else if(x<10.0) y=1.0/x;
else
if(x>10.0&&x<20.0) y=1.0/x+(2*x);
else y=30;printf("%.2f",y);
A.0.00 B.0.25 C.1.00 D.0.50
18.执行以下程序的输出结果是( )
int m=5;
if(m++>5)
if(m++>5) printf("%d",m--);
else
if(m!=6) printf("%d",m);
else printf("%d",--m);printf("%d",m+=4);
A.10 B.6 C.5 D.7
19.执行以下程序时从键盘输入:9<回车>,则输出结果是( )
int n;scanf("%d",&n);
if(n++<10)printf("%x",n);
else
if(n==10) printf("%d",n++);else printf("%d",n++);printf("%d",n);
A.10 B.a C.a10 D.1010
20.执行以下程序段的输出结果是( )
int i=0;
if(i==0)
if(++i<0)printf("##");
else
if(i++>++i) printf("$$");
printf("%d",i);
A.3 B.2 C.##2 D.$$3
二、判断题(本大题共5小题,每题3分,共15分)
21.iif (x = 5) 是合法的条件表达式。( )
22.iif-else if 结构中的条件是按顺序判断的。( )
23.if 语句的条件表达式可以是任意类型。( )
24.if-else链中,多个else会与最近的if配对。( )
25.条件运算符?:的结合方向是从右到左,例如a ? b : c ? d : e等价于a ? b : (c ? d : e)。( )
三、读程序写答案题(本大题共5小题,每题5分,共25分)
26.以下程序的运行结果是( )
#include <stdio.h>
#include<conio.h>
main()
{int a=100,x=10,y=20,m=5,n=1;
if(x<y)
if(y!=10)
if(!m)
a=1;
else
if(n) a=10;
printf("%d
",a);
getch();}
27.以下程序的运行结果是( )
#include <stdio.h>
#include<conio.h>
main()
{int x=1,y=2,z=3,k=0;
if(x==1)
if(y!=2)
if(z==3) k=1;
else k=2;
else if(z!=3) k=3;
else k=4;
else k=5;
printf("%d
",k);
getch();}
28.以下程序的运行结果是( )
#include <stdio.h>
#include<conio.h>
main()
{int a=1,b=3,c=5,d=4,x;
if(a<b)
if(c<d) x=1;
else
if(a<c)
if(b<d) x=2;
else x=3;
else x=6;
else x=7;
printf("%d",x);
getch();}
29.以下程序的运行结果是 。
#include<stdio.h>
#define PR(x,y) printf("%d,%d,",x,y)
void main()
{ int *p1, *p2,*p3;
int x=12,y=6;
p2=&x,p3=&y;
if(*p2>*p3){p1=p2,p2=p3,p3=p1;}
PR(x,y);
PR(*p2,*p3); }
30.执行以下程序的输出结果是
#include <stdio.h>
#include<conio.h>
main()
{ int a=1, b=0;
if (--a) b++;
else if(a==0) b+=2;
else b+=3;
printf("%d
",b);
getch();}
试卷第6页,共6页
试卷第5页,共6页
学科网(北京)股份有限公司
$