C++(基础班)上机复习

来源:互联网 发布:windows7服务优化 编辑:程序博客网 时间:2024/04/28 10:33
程序设计---自己编写  
--------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句。
------------------------------------------------*/


1. 输入年份和月份,输出该月的天数。(要求采用开关语句实现多路分支)
-------------------------------------------------------------------------------------*/
#include <iostream>
using namespace std;
int main()
{
int year, month, days;
cout<<"year:";
cin>>year;
cout<<"month:";
cin>>month;
/**********Program**********/


/**********  End  **********/
cout<<"days:"<<days<<endl;
return 0;
}


2:打印水仙花数及个数 n (水仙花数是三位数,每位数字的立方和等于这个数本身示)。-----------------------------------------------------------------------------------------*/
#include <iostream.h>
#include <fstream.h>
#include <stdio.h>
void writeinfile(int n);
void main()
{
        int m,n=0,a,b,c;
/**********Program**********/


/**********  End  **********/
        writeinfile(n);
}
void writeinfile(int n)
{
        fstream myfile;
        myfile.open(" f.txt" ,ios::out);
        myfile<<n<<endl;
        myfile.close();
}
                  
3: 编写一个函数,统计出一维数组中大于等于所有元素平均值的元素个数并返回它。------------------------------------------------------------------------------------*/
#include<iostream.h>
#include<fstream.h>
int Count(double a[], int n)
{
/**********Program**********/
        
/**********  End  **********/
}
void main()
{
        int c;
        double a[10] = {34,54,75,86,53,45,34,45,34,45};
        c=Count(a,10);
        cout<<" 数组中大于等于所有元素平均值的元素个数为:" <<c;
        void wwjt(int);
        wwjt(c);
}
void wwjt(int o)
{
        fstream myfile;
        myfile.open(" out.txt" ,ios::out);
        myfile<<o<<endl;
        myfile.close();
}


4:找出1-200之间的完数及个数 n(完数是一个数的因子之和是这个数本身。例如6=1+2+3)。-----------------------------------------------------------------------------------------*/
#include <iostream.h>
#include <fstream.h>
#include <stdio.h>
void writeinfile(int n);
void main()
{
int m,n,k,s,l;
/**********Program**********/


/**********  End  **********/
writeinfile(n);
}
void writeinfile(int n)
{
fstream myfile;
myfile.open(" f.txt" ,ios::out);
myfile<<n<<endl;
myfile.close();
}


5:在包含10个数的一维整数数组a中查找给定的数据num。 如果找到则返回1,未找到返回 0 . -------------------------------------------------------------------------------------*/
#include <fstream.h>
#include <iostream.h>
int fun(int a[],int num)
{
/**********Program**********/


/**********  End  **********/
}
void main()
{
    
       int a[10]={54,256,563,754,34,56,345,543,45,65};
       int num = 46;
           if (fun(a,num)==1)
                        cout <<" 找到!" <<endl;
           else
            cout <<" 没有找到!" <<endl;
           void wwjt();
           wwjt();
}
void wwjt()
{
      int a[10]={54,256,563,754,34,56,345,543,45,65};
          
                fstream myfile;
                myfile.open(" out.txt" ,ios::out);
                myfile<<fun(a,46)<<endl;
                myfile<<fun(a,345)<<endl;
                myfile.close();
}


6: 用“辗转相除方法”计算两个数 x,y 的最大公约数。-------------------------------------------------------------------------------------*/
#include <iostream.h>
#include <fstream.h>
#include <stdio.h>
void writeinfile(int n);
void main()
{
int x,y,n;
x=25,y=10;
/**********Program**********/


/**********  End  **********/
cout<<y;
writeinfile(y);
}
void writeinfile(int n)
{
fstream myfile;
myfile.open(" f.txt" ,ios::out);
myfile<<n<<endl;
myfile.close();
}


7.已知n,计算n以内的所有素数之和sum 。-------------------------------------------------------------------------------------*/
#include <iostream.h>
#include <fstream.h>
#include <stdio.h>
void writeinfile(int n);
void main()
{
int  n,k,m,l,sum=0;
n=100;
/**********Program**********/


/**********  End  **********/
writeinfile(sum);
}
void writeinfile(int n)
{
fstream myfile;
myfile.open(" f.txt" ,ios::out);
myfile<<n<<endl;
myfile.close();
}
8:将数组S中所有小写字母改写成大写字母。-------------------------------------------------------------------------------------*/
#include <iostream.h>
#include <fstream.h>
#include <string.h>
void fun(char s[])
{
/**********Program**********/
  
/**********  End  **********/        
}
void wwjt(char []);
void main()
{
        char s[80] = " abdsaFDSAFdsafASFDSafghHFDHTjte" ;
        fun(s);    
        wwjt(s);
}
void wwjt(char s[])
{
        fstream myfile;
        myfile.open(" out.dat" ,ios::out);
        myfile<<s<<endl;
        myfile.close();
}
    
9:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?-------------------------------------------------------------------------------------*/
#include <cmath>
#include <iostream>
using namespace std; 
int main()
{
        
    long int i;
    cin>>i;
    int bonus1, bonus2, bonus4, bonus6, bonus10, bonus;
    /**********Program**********/
   
    /**********  End  **********/
    cout<<" bonus = " <<bonus<<endl;
         return 0;
}
       
程序改错  
--------------------------------------------------
注意:不可以增加或删除程序行,也不可以更改程序的结构。
------------------------------------------------*/


1: 下列程序是求某班级的最高成绩、最低成绩和平均成绩的程序,输入负数表示结束。
-------------------------------------------------------------------------------------*/
#include <iostream.h>
void main()
{
float cj,sum,max,min,ave;
/***********FOUND***********/
int n=1; 
   cin>>cj; 
   sum=0;
/***********FOUND***********/
min=max=0;
/***********FOUND***********/
while(cj!=0)
   {
n++;
/***********FOUND***********/
sum=cj;
if(cj>max) max=cj;
if(cj<min) min=cj;
cin>>cj;
   }
  ave=sum/n;
  cout<<ave<<'\t'<<max<<'\t'<<min;
}


答案:
=======(答案1)=======int n=0;
=======(答案2)=======min=max=cj;
=======(答案3)=======while(cj>=0)
=======(答案4)=======sum+=cj;=========或=========sum=sum+cj;


2:在一个具有N个数的数组中查找并删除一个数K。
-------------------------------------------------------*/
#define n 10
#include <iostream.h>
void main()
{
/***********FOUND***********/
int a[n],n,k,i,j;
/***********FOUND***********/
for(i=1;i<=n;i++)
cin>>a[i];
cin>>k;
/***********FOUND***********/
for(i=1;i<=n||a[i]!=k;i++);
if(i<n)
{for(j=i;j<=n-1;j++)
a[j]=a[j+1];
/***********FOUND***********/
for(i=0;i<n;i++)
cout<<a[i];
}
else
{cout<<"not found";
for(i=0;i<n;i++)
cout<<a[i];
}
}
答案:
=======(答案1)=======int a[n],k,i,j;
=======(答案2)=======for(i=0;i<n;i++)
=======(答案3)=======for(i=0;i<n&&a[i]!=k;i++);
=======(答案4)=======for(i=0;i<n-1;i++)


3:计算数组元素中值为正数的平均值(不包括0)。例如:数组中元素的值依次为39,-47,21,2,-8,15,0,则程序的运行结果为1。
----------------------------------------------------------------------------------------*/
#include<iostream.h> 
double fun(int s[]) 

        /**********FOUND**********/   
        int sum=0.0;   
        int c=0,i=0; 
        /**********FOUND**********/   
        while(s[i]=0)
        {
                if (s[i]>0)     
                {
                        sum+=s[i];
                        c++;     
                }     
                i++;   
        } 
        /**********FOUND**********/   
        sum\=c; 
        /**********FOUND**********/   
        return c; 
}  
void main() 

        int x[100],i=0;   
        do   
        { 
                cin>>x[i];
        }     
        while(x[i++]!=0);     
        cout<<fun(x); 

                        
答案:
=======(答案1)=======double sum=0.0;=========或=========double sum=0;
=======(答案2)=======while(s[i]!=0)=========或=========while(s[i])
=======(答案3)=======sum/=c;=========或=========sum=sum/c;
=======(答案4)=======return sum;=========或=========return (sum);


4:打印扬辉三角形
     1
     1 1
     1 2 1
     1 3 3 1
     1 4 6 4 1
-------------------------------------------------------*/
#include <iostream.h>
void main()
{int a[5][5],i,j;
for(i=0;i<5;i++)
{
/***********FOUND***********/
a[i][1]=1;
a[i][i]=1;
for(j=1;j<=i-1;j++)
/***********FOUND***********/
a[i][j]=a[i-1][j-1]+a[i][j];

for(i=0;i<5;i++)
{
/***********FOUND***********/
for(j=0;j<5;j++)
/***********FOUND***********/
cout<<a[j][i]<<"  ";
cout<<endl;}
}
答案:
=======(答案1)=======a[i][0]=1;
=======(答案2)=======a[i][j]=a[i-1][j-1]+a[i-1][j];
=======(答案3)=======for(j=0;j<=i;j++)
=======(答案4)=======cout<<a[i][j]<<"  ";


5:计算T=1-1/2+2/3-3/4+……-29/30
-------------------------------------------------------*/
#include <iostream.h>
void main()
/***********FOUND***********/
{ int  t1,f,k; float t=1;
/***********FOUND***********/
f=1;
/***********FOUND***********/
for(k=1;k<=30;k++)
{
/***********FOUND***********/
t1=(k-1)/k;
t+=t1*f;
f=-f;
}
cout<<t;
}
    
答案:
=======(答案1)=======int  f , k ; float  t1 ,  t=1 ;
=======(答案2)=======f=-1;
=======(答案3)=======for(k=2;k<=30;k++)
=======(答案4)=======t1=(float)(k-1)/k;=========或=====t1=(k-1)/(float)k;
=========或=========t1=1.0*(k-1)/k;
                        
6:在一个已按升序排列的数组中插入一个数,插入后,数组元素仍按升序排列。---------------------------------------------------------------------------------*/
#include<iostream.h> 
void main() 

        const int N=11;
        int i,number,a[N]={1,2,4,6,8,9,12,15,149,156};
        cout<<" 请输入要插入的数" ;
        /**********FOUND**********/
        cin>>number>>endl;
        cout<<" 原数组为:\n" ;
    for(i=0;i<N-1;i++)     
                cout<<a[i]<<"   " ;   
        cout<<" \n" ; 
        /**********FOUND**********/   
        for(i=N-1;i>=0;i--)     
                if(number<=a[i]) 
                        /**********FOUND**********/     
                        a[i]=a[i-1];    
                else
                {
                        a[i+1]=number;
                        /**********FOUND**********/     
                        continue;   
                }
                if(number<a[0])
                        a[0]=number;     
                cout<<" 结果数组为:\n" ;
                for(i=0;i<N;i++)      
                        cout<<a[i]<<"   " ;
}
                   
答案:
=======(答案1)=======cin>>number;
=======(答案2)=======for(i=N-2;i>=0;i--)
=======(答案3)=======a[i+1]=a[i];
=======(答案4)=======break;
                      
7:下面函数chnum将一个整数字符串转换为一个整数。
------------------------------------------------------*/
#include<string.h>
#include<iostream.h> 
int chnum (char *str) 
{
        int i,j,k,h,len,L,num=0; 
/***********FOUND***********/
int L=n=strlen(str);
/***********FOUND***********/
        for(i=0;i<L;i+) ;
        {
        k=1; 
        j=len=len-1;
        cout<<len<<endl;
        while (j>0) 
        {
                k=k*10; 
/***********FOUND***********/
                j++; 
        }
/***********FOUND***********/
        h=*(str+4-len)-'0'; 
        num=num+h*k; 
        }
        return num; 
}
void main()
{int t;char *a=" 1234" ;
t=chnum(a);
cout<<t<<endl;
}            
答案:
=======(答案1)=======L=len=strlen(str);
=======(答案2)=======for(i=0;i<L;i++)
=======(答案3)=======j--;==或===--j;===或======j=j-1;=========或=========j-=1;
=======(答案4)=======h=*(str+i)-'0';


7:在[100,5000]之间打印出各位数字和为5的所有整数的个数. 
------------------------------------------------------*/
#include <iostream.h>
void main()
{
  int a,b,c,d,k,i;
  k=0;
  for(i=104;i<=500;i++)
  {
/***********FOUND***********/
  a=i%100;
  b=(i-a*100)/10;
  c=i-a*100-b*10; 
  }
/***********FOUND***********/
  if(a+b+c<>5) k++;
  for(i=1000;i<=5000;i++)
    {a=i/1000;
    b=(i-a*1000)/100; 
/***********FOUND***********/
    c=(i-A*1000-b*100)/100;
    d=i-a*1000-b*100-c*10;
/***********FOUND***********/
    if(a+b+c==5)  k++;
}
cout<<k;
}
答案:
=======(答案1)=======a=i/100;
=======(答案2)=======if( a + b + c ==5) k++;
=======(答案3)=======c=(i-a*1000-b*100)/10;
=======(答案4)=======if( a + b + c + d ==5)  k++;


程序填空  
注意:若语句结束已有分号处,填空中内容后面就不需要添加分号。


1:函数func的功能是:使一个字符串按逆序存放。
-------------------------------------------------------*/
#include <iostream.h>
#include<string.h>
void func (char str[])
{
/***********SPACE***********/
        【?】
        int i,j;
/***********SPACE***********/
        for(i=0,【?】;i<j;i++,j--)
        { 
                m=str[i];
/***********SPACE***********/
                【?】;
                str[j]=m; 
        }
/***********SPACE***********/
        cout<<【?】<<endl;
}
void main()
{
char str[]="12345";
func(str);
}
答案:
=======(答案1)=======char m;
=======(答案2)=======j=strlen(str)-1=========或=========j=5
=======(答案3)=======str[i]=str[j]
=======(答案4)=======str


2:用递归算法设计函数fa(int n),函数类型为整型,求1!+2!+3!+...+n!的值。
要求:在主函数中输入n的值,调用该函数并输出和。
------------------------------------------------------------------------------*/
#include <iostream.h>
/***********SPACE***********/
      【?】;
void main()
{
int n,sum=0;
           cout<<"请输入n"<<endl;
cin>>n;
/***********SPACE***********/
for(int i=1;i<=n;i++)
      【?】;
   cout<<sum<<endl;
}
int fa(int n)   
{
int  f;
if(n==0||n==1) f=1;
/***********SPACE***********/
    else【?】;
/***********SPACE***********/
    【?】;
}
答案:
=======(答案1)=======int fa(int n)或int fa(int)
=======(答案2)=======sum+=fa(i)或sum=sum+fa(i)
=======(答案3)=======f=fa(n-1)*n或 f=n*fa(n-1)
=======(答案4)=======return f


3:在一维数组中统计正数和负数的个数,正数的个数存入变量C1中,负数的个数存入变量C2中。
---------------------------------------------------------------------------------------*/
#include <iostream.h>
void main()
{
       int a[10]={1,-2,3,4,-5,6,7,8,-9,10};
/***********SPACE***********/
【?】
/***********SPACE***********/
for (int i=0;【?】;i++)
/***********SPACE***********/
     if(【?】>0)
       c1++;
else 
/***********SPACE***********/
【?】;
        cout<<c1<<"  " <<c2;
}
答案:
=======(答案1)=======int c1=0 , c2=0 ;
=======(答案2)=======i<10=========或=========i<=9
=======(答案3)=======a[i]
=======(答案4)=======c2++=========或=========c2=c2+1=========或=========++c2
=========或=========c2+=1


4:设计一个求和函数sum(int n),函数类型为整型,求1+2+3+...+a的值。
要求:在主函数中输入a的值,调用该函数并输出和。
------------------------------------------------------------------------------------------*/
#include <iostream.h>
/***********SPACE***********/
【?】;
void main()
{
int a,b=0;
           cout<<"请输入a:"<<endl;
cin>>a;
/***********SPACE***********/
          【?】;
cout<<b<<endl;
}
int sum(int n)  
{
int i,k=0;
for(i=1; i<=n;i++)
/***********SPACE***********/
【?】;
/***********SPACE***********/
【?】;   
}
答案:
=======(答案1)=======int sum(int n)或int sum(int)
=======(答案2)=======b=sum(a)
=======(答案3)=======k+=i 或k=k+i
=======(答案4)=======return k


5:以下程序用来对从键盘上输入的两个字符串进行比较,然后输出两个字符串中第一个不相同字符的ASCII码之差。例如:输入的两个字符串分别为abcdef和abceef,则输出为-1,请填空。
------------------------------------------------------------------------------------------*/
#include<iostream.h>
#include<string.h>               
void main()

        char  str1[50],str2[50];
        int i,s;
        cout<<" \n input string 1:\n" ;
/***********SPACE***********/
        【?】
        cout<<" \n input string 2:\n" ;
        cin.getline(str2,50);
        i=0;
/***********SPACE***********/
        while((【?】)&&(str1[i]!='\0'))
/***********SPACE***********/
                【?】;
/***********SPACE***********/
                【?】;
        cout<<s<<endl;
}
                        
答案:
=======(答案1)=======cin.getline(str1,50);== =或===cin>>str1;
=======(答案2)=======str1[i]==str2[i]==== =或===str2[i]==str1[i]
=======(答案3)=======i++====或====i=i+1===或====i+=1=====或====++i
=======(答案4)=======s=str1[i]-str2[i]


6:功能:输出100以内能被3整除的且个位是6的所有整数之和。
-------------------------------------------------------*/
#include <iostream.h>
void main()
/***********SPACE***********/
{
int sum,【?】
sum=0;
/***********SPACE***********/
for(i=1;i<=100;【?】)
/***********SPACE***********/
if(【?】)
sum+=i;
/***********SPACE***********/
cout<<【?】;
}
                        
答案:
=======(答案1)=======i;
=======(答案2)=======i++=========或=========i=i+1=====或===i+=1
=======(答案3)=======i%10==6&&i%3==0=========或======i%10==6 && i%3==0
=======(答案4)=======sum


7:功能:将一维数组大于等于平均值的元素存入另一个数组,小于平均值的元素仍存在原数组,并打印这两个数组。
-----------------------------------------------------------------------------------------*/
#include <iostream.h>
void main()
{
int i,la,lb,n;
float a[100],b[100],sum,av;
/***********SPACE***********/
【?】;
for(i=0;i<n;i++)
cin>>a[i];
/***********SPACE***********/
【?】;
for(i=0;i<n;i++)
sum+=a[i];
/***********SPACE***********/
【?】;
la=lb=0;
for(i=0;i<n;i++)
if(a[i]>=av)
b[lb++]=a[i];
else
/***********SPACE***********/
{【?】;
}
for(i=0;i<la;i++)
cout<<a[i]<<" ";
cout<<'\n';
for(i=0;i<lb;i++)
cout<<b[i]<<" ";
}
答案:
=======(答案1)=======cin>>n
=======(答案2)=======sum=0
=======(答案3)=======av=sum/n
=======(答案4)=======a[la++]=a[i]


8:判断一个字符串是否是回文,是输出“yes”, 否则输出“no”.(回文是字符串正读反读一样,如level) 
---------------------------------------------------------------------------------------*/
#include <iostream.h>
int lenth(char a[])
{
int  i;
/***********SPACE***********/
for(i=0; 【?】;i++);
return i;
}
void main()
{
int i,j,l;
char a[50];
cin.getline(a,50);
/***********SPACE***********/
l=【?】;
/***********SPACE***********/
for(i=0,j=l-1;i<j;i++,【?】)
if(a[i]!=a[j])
break;
/***********SPACE***********/
if(【?】)
cout<<" yes" ;
else
cout<<" no" ;
}
                        
答案:
=======(答案1)=======a[i]!='\0'
=========或========a[i]!=0=========或=========a[i]
=======(答案2)=======lenth(a)
=======(答案3)=======j--===或=======--j======或===j=j-1=========或=========j-=1
=======(答案4)=======i>=j=========或=========j<=i
                        
9:FIBONACCI数列的前N项
-------------------------------------------------------*/
#include <iostream.h>
void main()
{
int n,l1,l2,l3,i;
cin>>n;
/***********SPACE***********/
l1=【?】;l2=1;
cout<<l1<<endl<<l2<<endl;
/***********SPACE***********/
for(i=3;【?】)
/***********SPACE***********/
{l3=【?】;
cout<<l3<<endl;
l1=l2;
/***********SPACE***********/
【?】;
}
}    
答案:
=======(答案1)=======0
=======(答案2)=======i<=n;i++=========或=========i<n+1;i++
=======(答案3)=======l1+l2=========或=========l2+l1
=======(答案4)=======l2=l3


10:输出4行4列矩阵的转置矩阵。
-------------------------------------------------------*/
#include <iostream.h>
void zz(int a[4][4])
{ int  b,i,j;
for(i=0;i<4;i++)
/***********SPACE***********/
for(j=0;j<【?】;j++)
{b=a[i][j];
a[i][j]=a[j][i];
/***********SPACE***********/
【?】;}
}
 void main()
{
/***********SPACE***********/
int【?】,i,j;
for(i=0;i<4;i++)
for(j=0;j<4;j++)
cin>>a[i][j];
/***********SPACE***********/
【?】;
 for(i=0;i<4;i++)
{for(j=0;j<4;j++)
cout<<a[i][j];
cout<<endl;
}
}
                        
答案:
=======(答案1)=======i=========或=========i+1
=======(答案2)=======a[j][i]=b
=======(答案3)=======a[4][4]
=======(答案4)=======zz(a)
                        
11:下列程序是求100之内的能被7整除的自然数之和。
-------------------------------------------------------*/
    #include <iostream.h>
    void main( )
    {
        int sum;
/***********SPACE***********/
        【?】;
/***********SPACE***********/
        for(int i(1);【?】;i++)
/***********SPACE***********/
          if(【?】)
            sum+=i;
        cout<<sum<<endl;
}
                        
答案:
=======(答案1)=======sum=0
=======(答案2)=======i<=100=========或=========i<100=========或======i<=99
=======(答案3)=======i%7==0


12:编写程序求1!+2!+3!+4!+5!和。
     (其中求阶乘是用函数来实现的)。
----------------------------------------------------------------------------------*/
#include<iostream.h>
/***********SPACE***********/
【?】;                        
void main( )
{    long s=0;
for(int i=1;i<=5;i++)
/***********SPACE***********/
        【?】;                 
cout<<" 1!+2!+3!+4!+5!= " <<s<<endl;
}
long int fac(int x)
{   static int b=1;
         b*=x;
/***********SPACE***********/
    【?】;                        
}
                        
答案:
=======(答案1)=======long int fac(int x)=========或====long int fac(int)
=======(答案2)=======s+=fac(i)=========或=========s=s+fac(i)
=======(答案3)=======return b
                        
13:从键盘输入两个正整数求最大公约数。
-------------------------------------------------------*/
#include <iostream.h>
void main()
{ int m,n,k;
cin>>m>>n;
/***********SPACE***********/
k=【?】;
/***********SPACE***********/
while(【?】)
{m=n;
/***********SPACE***********/
【?】;
/***********SPACE***********/
k=【?】;
}
cout<<n;
}
答案:
=======(答案1)=======m%n;
=======(答案2)=======k!=0
=======(答案3)=======n=k
=======(答案4)=======m%n;


14:编写程序是用递归算法求n!。
-------------------------------------------------------*/
#include<iostream.h>
int f1(int a);
void main()
{
    int a=6;
/***********SPACE***********/
    cout<<【?】<<endl;
}
int f1(int a)
{
/***********SPACE***********/
    return(a==0)?1:【?】;
}


答案:
=======(答案1)=======f1(6)=========或=========f1(a)
=======(答案2)=======a*f1(a-1)=========或=========f1(a-1)*a


15:输入若干学生成绩,以负数或者大于100作为输入结束。统计100,90-99,80-89,70-79,60-69,0-60各段的人数。
-------------------------------------------------------*/
#include <iostream.h>
void main()
{
int s,n[6],i,m;
for(i=0;i<6;i++)
/***********SPACE***********/
【?】;
cin>>s;
while(s>=0 && s<=100)
/***********SPACE***********/
{m=【?】;
if(m<1)
m=0;
/***********SPACE***********/
【?】;
/***********SPACE***********/
【?】;
}
cout<<"  0-59" <<"   " <<n[0]<<endl;
for(i=1;i<5;i++)
cout<<(i+5)*10<<" -" <<(i+5)*10+9<<"   " <<n[i]<<endl;
cout<<"  100 " <<n[5]<<endl;
}
                        
答案:
=======(答案1)======= n[i]=0
=======(答案2)=======s/10-5
=======(答案3)=======n[m]=n[m]+1====或====n[m]++=========或=========n[m]+=1
=======(答案4)=======cin>>s
                        
16:下面程序运行后输出的结果为:
           * *
         * * * *
       * * * * * *
-------------------------------------------------------*/
#include <iostream.h>
#include<iomanip.h>
void main()

int i,j,k ;
for(i=1 ;i<=4 ;i++)
{
/***********SPACE***********/
     for(j=1;j<20-3*i;【?】)
        cout<<"  " ;
/***********SPACE***********/
     for(k=1;【?】; k++)
        cout<<setw(3)<<" *" ;
/***********SPACE***********/
        【?】;  //换行

 }
                        
答案:
=======(答案1)=======j++=========或=========j=j+1
=======(答案2)=======k<2*i-1=========或=========k<=2*i-2
=======(答案3)=======cout<<endl


17:功能:打印图形
      *****
      ****
      ***
      **
      * 
-------------------------------------------------------*/
#include <iostream.h>
void main()
{
char c[6];int i,j;
for(i=0;i<5;i++)
{
/***********SPACE***********/
【?】;
/***********SPACE***********/
for(【?】)
/***********SPACE***********/
c【?】='*';
/***********SPACE***********/
cout<<【?】;
}
}
答案:
=======(答案1)=======c[5-i]='\0'=========或=========c[5-i]=0
=======(答案2)=======j=0;j<5-i;j++
=======(答案3)=======[j]
=======(答案4)=======c<<'\n'=========或=========c<<endl


18:求FIBONACCI数列的前N项.
提示:0,1,1,2,3,5,8,13......
-------------------------------------------------------*/
#include <iostream.h>
void main()
{
int n,l1,l2,l3,i;
cin>>n;
/***********SPACE***********/
l1=【?】;l2=1;
cout<<l1<<endl<<l2<<endl;
/***********SPACE***********/
for(i=3;i<=n;【?】)          
/***********SPACE***********/
{l3=【?】;
cout<<l3<<endl;
/***********SPACE***********/
【?】;                      //更新l1变量
/***********SPACE***********/
【?】;                     //更新l2变量
}
}
                        
答案:
=======(答案1)=======0
=======(答案2)=======i++=========或=========++i
=========或=========i+=1=========或=========i=i+1=========或=========i=1+i
=======(答案3)=======l1+l2=========或=========l2+l1
=======(答案4)=======l1=l2
=======(答案5)=======l2=l3
                        

1 0
原创粉丝点击