《C语言程序设计》自检自测题及答案
- 格式:doc
- 大小:34.50 KB
- 文档页数:10
1 / 10 《C++语言程序设计》自检自测题(三)及答案
一、给出下列程序运行后的输出结果
1.
#include
void main(){
int s1=0,s2=0;
for(int i=0;i<10;i++)
if(i%2)s1+=i;
else s2+=i;
cout<
}
2.
#include
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<
}
3.
#include
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<
}
4.
#include
void main(){
int a=10,b=15;
cout<
{a*=3;
int b=a+20;
cout<
} 2 / 10 cout<
}
5.
#include
void main(){
int x=20,y=40,*p;
p=&x;
cout<<*p<<’’;
*p=x+10;
p=&y;
cout<<*p<
*p=y+20;
cout<
}
6.
#include
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<
}
void main(){
char a[6]=”Abcaf”;
for(int i=0;a[i];i++)SB(a[i]);
}
7.
#include
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; 3 / 10 b1=a[i];
}
cout<
}
8.
#include
void main(){
int a[8]={3,5,7,9,11,13,15,17};
int *p=1;
for(int i=0;i<8;i++){
cout<
if((i+1)%3==0)cout<
}
}
9.
#include
void LG(int* & a,int& m){
a=new int [m];
int *p=a;
for(int i=0;i
*p++=i*i;
}
void main(){
int *b,n=5;
LG(b,n);
for(int i=0;i
cout<
cout<
delete[]b;
}
10.
#include
#include
struct Worker{
char name[5];//姓名
int age; //年龄
float pay; //工资
};
void main(){ 4 / 10 Worker x;
char *t=”WeiRong”;
int d=45;float f=1235;
strcpy(,t);
x.age=d;x.pay=f;
cout<<<<’’<
}
11.
#include
void main(){
int s=0;
for(int i=1;i<=5;i++)
s+=i*i;
cout<<”s=”<
}
12.
#include
void main(){
int s=0;
for(int i=1;;i++){
if(s>50)break;
if(i%2==0)s+=i;
}
cout<<”i,s=”<
}
13.
#include
int LB(int *a,int n){
int s=1;
for(int i=0;i
s*=*a++;
return s;
}
void main(){
int a[]={1,2,3,4,5,6,7,8};
cout<
cout<
}
14.
#include 5 / 10 struct Worker{
char name[15];//姓名
int age; //年龄
float pay; //工资
};
void main(){
Worker x{“wangfong”,43,640};
Worker y,*p;
y=x;p=&x;
cout<<<<’’<
cout } 二、写出下列每个函数的功能 1. #include int S(int a,int b){ if(a>b)return 1; else if(a==b)return 0; else return -1; } 2. #include bool SG(int x){ //x为大于等于2的整数 int a=int(sqrt(x));//取x的平方根 int i=2; while(i<=a){ if(x%i==0)break; i++; } if(i<=a)return 0; else return 1; } 3. // struct Worker{ // char name[15];//姓名 // int age; //年龄 // float pay; //工资 }; void Q(Worker a[],int n){ for(int i=0;i cin>>a[i].name>>a[i].age>>a[i].pay; 6 / 10 } 4. #include #include void JD(char *fname) //可把以fname所指字符串作为文件标识符的文件称为fname文件 //假定该文件保存着一批整数 { ifstream fin(fname,ios::in|ios::nocreate\ios::binary) int x,s=0,n=0; while(fin.read((char*)&x,sizeof(x))){ s+=x;n++; } cout< fin.close(); } 5. float FI(int n){ //n为大于等于1的整数 float x,y=0; do{ cin>>x; n--;y+=x*x; }while(n>0); return y; } 6. #include void WA(int a[],int n){ for(int i=0;i int k=i; for(int j=i+1;j if(a[j] int x=a[i];a[i]=a[k];a[k]=x; } } 7. #include void LI(int n){ int *a=new int[n];