《C++语言程序设计》自检自测题(三)及答案
一、给出下列程序运行后的输出结果
1.
#include<iostream.h>
void main(){
int s1=0,s2=0;
for(int i=0;i<10;i++)
if(i%2)s1+=i;
else s2+=i;
cout<<s1<<’’<<s2<<endl;
}
2.
#include<iostream.h>
void main(){
int a[8]={8,19,26,15,6,24,27,18};
int i2=0,i3=0;
for(int i=0;i<8;i++)
if(a[i]%2==0)i2++;
else if(a[i]%3==0)i3++;
cout<<i2<<’’<<i3<<endl;
}
3.
#include<iostream.h>
void main(){
int a[3][4]={{1,2,7,8},{5,6,11,12},{9,20,3,4}};
int m=a[0][0];
int ii=0,jj=0;
for(int i=0;i<3;i++)
for(int j=0;j<4;j++)
if(a[i][j]>m){m=a[i][j];ii=i;jj=j;}
cout<<ii<<’’<<jj<<’’<<a[ii][jj]<<endl;
}
4.
#include<iostream.h>
void main(){
int a=10,b=15;
cout<<a<<’’<<b<<endl;
{a*=3;
int b=a+20;
cout<<a<<’’<<b<<endl;
}
cout<<a<<’’<<b<<endl;
}
5.
#include<iomanip.h>
void main(){
int x=20,y=40,*p;
p=&x;
cout<<*p<<’’;
*p=x+10;
p=&y;
cout<<*p<<endl;
*p=y+20;
cout<<x<<’’<<y<<endl;
}
6.
#include<iostream.h>
void SB(char ch){
switch(ch){
case ’A’:case ’a’:
cout<<”well!”;break;
case ’B’:case ’b’:
cout<<”good!”;break;
case ’C’:case ’c’:
cout<<”pass!”;break;
default:
cout<<”bad!”;break;
}
cout<<endl;
}
void main(){
char a[6]=”Abcaf”;
for(int i=0;a[i];i++)SB(a[i]);
}
7.
#include<iostream.h>
void main(){
int a[8]={36,25,48,14,55,40,72,40};
int b1,b2;
b1=b2=a[0];
for(int i=1;i<8;i++)
if(a[i]>b1){
if(b1>b2)b2=b1;
b1=a[i];
}
cout<<b1<<’’<<b2<<endl;
}
8.
#include<iomanip.h>
void main(){
int a[8]={3,5,7,9,11,13,15,17};
int *p=1;
for(int i=0;i<8;i++){
cout<<setw(5)<<*p++;
if((i+1)%3==0)cout<<endl;
}
}
9.
#include<iomanip.h>
void LG(int* & a,int& m){
a=new int [m];
int *p=a;
for(int i=0;i<m;i++)
*p++=i*i;
}
void main(){
int *b,n=5;
LG(b,n);
for(int i=0;i<n;i++)
cout<<b[n-i-1]<<’’;
cout<<endl;
delete[]b;
}
10.
#include<iostream.h>
#include<string.h>
struct Worker{
char name[5];//姓名
int age; //年龄
float pay; //工资
};
void main(){
Worker x;
char *t=”WeiRong”;
int d=45;float f=1235;
strcpy(x.name,t);
x.age=d;x.pay=f;
cout<<x.name<<’’<<x.age<<’’<<x.pay<<endl;
}
11.
#include<iostream.h>
void main(){
int s=0;
for(int i=1;i<=5;i++)
s+=i*i;
cout<<”s=”<<s<<endl;
}
12.
#include<iostream.h>
void main(){
int s=0;
for(int i=1;;i++){
if(s>50)break;
if(i%2==0)s+=i;
}
cout<<”i,s=”<<i<<”,”<<s<<endl;
}
13.
#include<iomanip.h>
int LB(int *a,int n){
int s=1;
for(int i=0;i<n;i++)
s*=*a++;
return s;
}
void main(){
int a[]={1,2,3,4,5,6,7,8};
cout<<LB(a,5)<<’ ’<<LB(&a[3],3)<<’ ’;
cout<<LB(a+2,4)<<endl;
}
14.
#include<iostream.h>
struct Worker{
char name[15];//姓名
int age; //年龄
float pay; //工资
};
void main(){
编程递归函数 Worker x{“wangfong”,43,640};
Worker y,*p;
y=x;p=&x;
cout<<y.name<<’’<<y.age<<’’<<y.pay<<endl;
cout<<p->name<<’’<<p->age*2<<’’<<p->pay+100<<endl;
}
二、写出下列每个函数的功能
1.
#include<iostream.h>
int S(int a,int b){
if(a>b)return 1;
else if(a==b)return 0;
else return -1;
}
2.
#include<math.h>
bool SG(int x){ //x为大于等于2的整数
int a=int(sqrt(x));//取x的平方根
int i=2;
while(i<=a){
if(x%i==0)break;
i++;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论