信息学奥赛C++语言基础阶段性考试.docx
《信息学奥赛C++语言基础阶段性考试.docx》由会员分享,可在线阅读,更多相关《信息学奥赛C++语言基础阶段性考试.docx(10页珍藏版)》请在冰豆网上搜索。
信息学奥赛C++语言基础阶段性考试
信息学奥赛C++语言基础阶段性考试
1、定义一个整数变量A,正确的语法结构为()
A.ina;
B.inta
C.inta;(正确答案)
D.inta;
2、C++中的除法符号为()
A.÷
B.X
C.
D./(正确答案)
3、C++中,语句“intc=0;”,其中变量名为()
A.int
B.=
C.c(正确答案)
D.0
4、
#include
usingnamespacestd;
intmain(){
inta=3,b=7;
____________;
return0;
}
程序要输出a+b的结果,上方空格横线处正确填写的语句是哪个选项?
A.printf("a+b");
B.scanf("%d",&a+b)
C.printf("%d",a+b);(正确答案)
D.printf(a+b);
5、下面C代码的输出结果是
inta,r;
a=100;
r=a-10;
printf("Theresultis%d",r);
A.Theresultis90(正确答案)
B.Theresultis95
C.Theresultis10
D.Theresultis100
6、对于以下程序:
#include
usingnamespacestd;
intmain()
{
inta=2;
intb=a+2
printf("%d",b);
return0;
}
则输出结果是:
A.4
B.%d
C.a+2
D.程序无法通过编译(编译错误)(正确答案)
7、a已知为整数型变量,以下输入语句中,正确的是:
[单选题]
A.scanf("%d",a);
B.scanf("%d",&a)
C.scanf("%d",&a);(正确答案)
D.scanf(%d,&a);
8、对于以下语句:
inta=10/3;则a的值为()
A.3/10
B.3(正确答案)
C.3.33
D.10/3
9、对于以下语句:
inta,b;
a=b;
b=a;
最终效果是将a和b互换
A.对
B.错(正确答案)
10、若想取出一个五位数a的个位(如48629个位为9),则下列语句可行的是:
A.intge=a%10;(正确答案)
B.intge=a/10;
C.intge=a%1;
D.intge=a/1;
11、若想取出一个五位数a的十位(如48629十位为2),则下列语句可行的是:
A.intshi=a%100;
B.intshi=a/100;
C.a=a%10;intshi=a/10;
D.a=a/10;intshi=a%10;(正确答案)
12、以下不正确的if语句形式是?
A.if(x>y&&x!
=y)printf("yes");
B.if(x==y)x+=y;
C.if(x!
=y)printf("yes"),elseprintf("no");(正确答案)
D.if(x13、有以下程序段:
inta,b,c;
a=10;b=50;c=30;
if(a
c=a;a=b;b=c;
}
printf("a=%db=%dc=%d\n",a,b,c);
}
程序的输出结果是?
A.a=10b=50c=30
B.a=50b=10c=10(正确答案)
C.a=10b=50c=50
D.a=50b=10c=30
14、以下程序段的输出结果是?
int a=100,x=10,y=20,ok1=5,ok2=0;
if(x if(ok1==0) a=1;
else if(ok2!
=0) a=10;
a=-1;
printf("%d\n",a);
[单选题]
A.1
B.10
C.-1(正确答案)
D.100
15、题目描述
判断一个整数的奇偶性,如果是奇数,请输出“ji”,如果是偶数,请输出“ou”
以下______________处填写正确的是哪个选项?
#include
usingnamespacestd;
intmain(){
inta;
scanf("%d",&a);
if(__________)printf("ou\n");
elseprintf("ji\n");
return0;
}
A.a/2==0
B.a%10==0
C.a%2=0
D.a%2==0(正确答案)
16、题目描述
已知有三个不等的数,将其中的最大数找出来。
以下哪个程序是正确的?
A.
B.(正确答案)
C.
D.
17、题目描述
已知有三个整数(有可能相等),将它们从大到小输出。
以下哪个程序是正确的?
A.
B.(正确答案)
C.
D.
18、以下写法为判断某年份是否为闰年,正确的选项是:
A.if(n%4==0)
B.if(n%400==0&&n%100!
=0)
C.if((n%4==0||n%100!
=0)&&n%400==0)
D.if((n%4==0&&n%100!
=0)||n%400==0)(正确答案)
题目描述:
输入两个加数,输出和。
样例输入:
1210
样例输出:
22
以下程序功能是编写一个加法程序。
空白处应该填写的内容为:
#include
usingnamespacestd;
int___(19)____(){
___(20)___a,b;
scanf("%d%d",_(21)__a,_(21)__b);
printf("___(22)_____",a+b);
return0;
}
(19)处应填写的内容是________
[单选题]
A.include
B.mina
C.main(正确答案)
D.mian
在上一题中,(20)空白处应该填什么?
A.include
B.in
C.main
D.int(正确答案)
在上一题中,(21)空白处应该填什么?
A.#
B.$
C.%
D.&(正确答案)
在上一题中,(22)空白处应该填什么?
A.a+b
B.&d
C.%d(正确答案)
D.%
二、填空题(共5题,每题4分)
23、对于以下程序:
#include
intmain()
{
inta=2;
intb=a+3;
printf("%d",b);
return0;
}
则输出结果是:
________
_________________________________(答案:
5)
24、若a是int型变量,则执行下面表达式a=25/3%3后,a的值为______
_________________________________(答案:
2)
25、对于以下语句:
inta,b,c;
a=125;
b=a/10;
c=a-b;
printf("%d",c);
则最后输出结果为:
__________
_________________________________(答案:
113)
26、对于以下语句:
inta,b,c;
a=10;
b=12;
c=b-b%a;
则c最终的值为:
_________________________________(答案:
10)
27、
intmain()
{
inta,b,s;
scanf("%d%d",&a,&b);
s=a;
if(a
s=ss;
printf("%d\n",s);
}
若输入的是3和4,则输出是_____________
_________________________________(答案:
16)
28、对于浮点类型变量doublea,输入需要使用的语句是:
scanf("%___",&a);空格处应填内容为:
_________________________________(答案:
lf)