北京理工计算机 上机复试2002年A

一、  某人有8角的邮票5张,1元的邮票4张,1元8角的邮票6张,用这些邮票中的一张或若干张能够获得多少中不一样的邮资?ios

 1 #include<iostream>
 2 using namespace std;
 3 
 4 int found(double x,double p[]){
 5 for(int i=0;i<300;i++)
 6     if(p[i]==x)
 7         return 1;
 8 return 0;
 9 }
10 int insert(double x,double p[]){
11     for(int i=0;i<300;i++)
12         if(p[i]==0){
13             p[i]=x;
14             return i+1;
15         }
16 return 0;
17 }
18 
19 int main(){
20     double p[300]={0};
21     int sum=0;
22     for(int i=0;i<6;i++)
23         for(int j=0;j<5;j++)
24             for(int k=0;k<7;k++){
25                 double x=0.8*i+1*j+1.8*k;
26                 if(!found(x,p))
27                     insert(x,p);
28             }
29             for(int z=0;z<300;z++){
30             
31                 if(p[z]==0){
32                 cout<<z<<endl;
33                 return 0;
34                 }
35             }
36 return 0;
37 }//main
2002A_01.cpp

二、  输入n值,使用递归函数,求杨辉三角形中各个位置上的值,按照以下形式打印输出图形。例如:当n=6时。ide

      1函数

     1 1spa

    1 2 1code

   1 3 3 1blog

  1 4 6 4 1递归

1 5 10 10 5 1ci

 

 1 #include<iostream>
 2 using namespace std;
 3 
 4 int trangle(int m,int n){    
 5     if(m>0&&n==1)return 1;
 6     else if(m>1&&n>1) return trangle(m-1,n-1)+trangle(m-1,n);
 7     else return 0;
 8 }
 9 
10 int main(){
11     int n;
12     cout<<"please input a num"<<endl;
13     cin>>n;
14     for(int i=0;i<=n;i++){
15         for(int j=0;j<=n;j++){
16             int x=trangle(i,j);
17             if(x>0)cout<<" "<<x<<" ";
18             else cout<<" ";
19         }
20         cout<<endl;
21     }
22 
23 return 0;
24 }//main
2002A_02.cpp
相关文章
相关标签/搜索