资源描述
义乌市信息学编程设计竞赛试题
小学组 C++语言 满分 100分 考试时间 120分钟
一、 单项选取题(每题2分,共10题)
1、1946年诞生于美国宾夕法尼亚大学ENIAC属于( )计算机。
A.电子管 B.晶体管 C.集成电路 D.超大规模集成电路
2、C++源程序文献扩展名为( )。
A..CPP B. .h C. .lib D. .obj
3、对C++语言和C语言兼容性,描述对的是( )。
A.C++兼容C B. C++某些兼容C C. C++不兼容C D. C兼容C++
4、编写C++程序普通需通过几种环节依次是( )。
A.编辑 调试 编译 运营 B.编辑 编译 连接 运营
C.编译 调试 编辑 连接 D.编译 编辑 连接 运营
5、已知下列语句中x和y都是int型变量,其中错误语句( )。
A.x=y++; B.x=++y; C.(x+y)++; D.++x=y;
6、操作系统、数据库管理系统和程序设计语言解决软件属于( )。
A.管理软件 B.系统软件 C.编辑软件 D.应用软件
7、下列不能作为C++标记符使用是( )。
A.a43 B.user C._lvar D.9stars
8、二进制10101010表达书是十进制下( )。
A.170 B.252 C.AA D.42
9、计算机存储数据基本单位是( )。
A.bit B.Byte C.GB D.KB
10、在C++中使用流进行输入输出,其中用于屏幕输出对象是( )。
A.cerr B.cin C.cout D.cfile
二、程序阅读题(每题6分 共30分)
2、# include <iostream>
Using namespace std;
Int main()
{
int a,b,c,m;
cin>>a>>b>>c;
m=a;
if(b>m) m=b;
if(c>m) m=c;
cout<<m;
return 0;
}
输入: 10 252 18
输出: 252
1、 # include <iostream>
Using namespace std;
Int main()
{
int c;
int d=10;
c=++d;
cout<<“d=”<<d<<endl;
cout<<“c=”<<c<<endl;
int e=10;
c=e++;
cout<<“e=”<<e<<endl;
cout<<“c=”<<c<<endl;
return 0;
}
输出:
d=11
c=11
e=11
c=10
3、 # include <iostream>
Using namespace std;
Int main()
{
int i,n;
cin>>n;
for(i=1;i<=n;i++)
if(i%5==0) cout<<” ”<<i;
return 0;
}
输入:30
输出: 5 10 15 20 25 30
4、# include <iostream>
Using namespace std;
Int main()
{
int j,s;
s=30; j=3;
while(s>0)
{ j=++j+4;
s=s-j++;
}
cout<<j;
return 0;
}
输出: 21
5、 # include <iostream>
Using namespace std;
int n,i,temp,sum,a[100];
Int main()
{ cin>>n;
for(i=1;i<=n;i++)
cin>>a[i];
for(i=1;i<=n;i++)
if(a[i]>a[i+1])
{temp=a[i];a[i]=a[i+1];a[i+1]=temp;}
for(i=n;i>=2;i--)
if(a[i]<a[i-1])
{temp=a[i];a[i]=a[i-1];a[i-1]=temp;}
sum=0;
for(i=2;i<=n-1;i++)
sum+=a[i];
cout<<sum/(n-2)<<endl;
return 0;
}
输入:4
-40 20 30 50
输出: 10
三、程序填空(每空3分,共30分)
1、 输入20个数,记录其中正数、负数和零个数。
# include <iostream>
using namespace std;
Int main()
{
int a,n=0,m=0,s=0;
for( ① int i=1;i<=20;i++ ) int i=0;i<20;i++
{ cin>>a;
if(a>0) ② n++ ;
else if(a<0) ③ m++ ;
else ④ s++ ;
}
cout<<n<<” “<<m<<” “<<s;
}
2、 公鸡5元一只,母鸡3元一只,悲观3只一元,用100元钱买一百只鸡,其中公鸡母鸡小鸡都必要要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100元钱?
# include <iostream>
# include<iomanip>
using namespace std;
Int main()
{
int cock,hen,chick;
for( ⑤ cock=1;cock<20;cock++ )
for( ⑥ hen=1;hen<=33;hen++ )
{
chick=100-cock-hen;
if( ⑦ cock*5+hen*3+chick/3.0==100 )
cout<<setw(5)<<cock<<setw(5)<<hen<<setw(5)<<chick<<endl;
}
3、 打印一种九九乘法表
# include <iostream>
# include<iomanip>
using namespace std;
Int main()
{
for( ⑧ int i=1;i<=9;i++ )
{
for( ⑨ int j=1;j<=i;j++ )
1. ⑩ cout << i << "*" << j << "=" << i*j << "\t";
cout<< endl;
}
}
四、程序编写(请依照题目规定用学过知识及C++编写一种完整程序,每题10分,共20分)
1、从键盘上输入一种三位数,然后将它反向输出,例如输入789,输出987.
参照程序:#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
do
{
cout << n % 10;
} while(n /= 10);
return 0;
}
2、求所有水仙花数,所谓水仙花数是指三位数,其各位数立方和等于该数。如153=1*1*1+5*5*5+3*3*3.(153 370 371 407)
参照程序:
#include <iostream>
using namespace std;
int main ()
{int i,j,k,n;
cout<<"水仙花数:"<<endl;
for (n=100;n<1000;n++)
{i=n/100;
j=n/10-i*10;
k=n%10;
if (n == i*i*i + j*j*j + k*k*k)
cout<<n<<" ";
}
cout<<endl;
return 0;
}
展开阅读全文