正在训练的题目-->【 1 】【选择结构】初步认识选择结构---单分支表达 ( LibNumber: 6 )
#include<cstdio>
int x;
int main(){
    int randa,randb,randc;
    printf("%d  %d  %d\n",x,randa,randb);
    int cj=randb%100;
    printf("%d \n",cj);
    if(cj>=60){
        printf("ji ge");
    }
    return 0; 
}

正在训练的题目-->【 2 】【选择结构】初步认识选择结构---双分支表达 ( LibNumber: 7 )
#include<cstdio>
int x;
int main(){
    int randa,randb,randc;
    printf("%d  %d  %d\n",x,randa,randb);
    int cj=randb%100;
    printf("%d \n",cj);
    if(cj>=60){
        printf("ji ge\n");
    }else{
        printf("bu ji ge\n");
    }
    return 0; 
}

正在训练的题目-->【 3 】【选择结构】读入一个整数a,如果a为偶数在屏幕上输出yes ( LibNumber: 8 )
//例3.1  读入一个整数a,如果a为偶数在屏幕上输出yes
#include<iostream>
using namespace std;
int main(){
    int a;
    cin>>a;
    if (a%2==0)
        cout<<"yes";
    return 0;
}

正在训练的题目-->【 4 】【选择结构】读入一个数,若这个数大于1并且小于100,则输出yes ( LibNumber: 9 )
//例3.2  读入一个数,若这个数大于1并且小于100,则输出yes
# include<iostream>
using namespace std;
int main(){
    int a;
    cin>>a;
    if ((a>1)&&(a<100))
        cout<<"yes";
    return 0;
}

正在训练的题目-->【 5 】【选择结构】输入三个整数,按从大到小的顺序输出。 ( LibNumber: 10 )
//例3.3  输入三个整数,按从大到小的顺序输出。
#include<iostream>
using namespace std;
int main(){
    int a,b,c,temp;
    cin>>a>>b>>c;
    if(a<b){
        temp=a;   a=b;  b=temp;
    }
    if(a<c){
        temp=a;  a=c;  c=temp;
    }
    if(b<c){
        temp=b;  b=c;  c=temp;
    }
    cout<<a<<" "<<b<<" "<<c<<endl;
    return 0; 
}

正在训练的题目-->【 6 】【选择结构】输入温度t的值,判断是否适合晨练。 ( LibNumber: 11 )
//例3.4  输入温度t的值,判断是否适合晨练。(25<=t<=30,则适合晨练ok,否则不适合no)
#include<iostream>
using namespace std;
int main() {
    int t;
    cin>>t;
    if( (t>=25) &&(t<=30) )
        cout<<"ok!\n";
    else
        cout<<"no!\n";
    return 0;
}

正在训练的题目-->【 7 】【选择结构】输入三个数,输出其中最大的数。 ( LibNumber: 12 )
//例3.5  输入三个数,输出其中最大的数。
#include<iostream>
using namespace std;
int main( ) {
    float a,b,c,maxn;
    cin>>a>>b>>c;
    if ( a>b&&a>c ) maxn=a;
    else if ( b>a&&b>c ) maxn=b;
    else maxn=c;
    cout<<maxn<<endl;
    return 0;
}

正在训练的题目-->【 8 】【选择结构】乘坐飞机时,当乘客行李小于等于20公斤时 ( LibNumber: 13 )
//例3.6  乘坐飞机时,当乘客行李小于等于20公斤时,按每公斤1.68元收费,
//大于20公斤时,按每公斤1.98元收费,编程计算收费(保留2位小数)。
#include<iostream>
using namespace std;
int main() {
    float  w, p;
    scanf("%f",&w);
    if (w<=20)
        printf("%.2f",w*1.68);
    else
        printf("%.2f",w*1.98);
    return 0;
}

正在训练的题目-->【 9 】【选择结构】三目运算符表达一 ( LibNumber: 14 )
//三目运算符表达一
#include<iostream>
using namespace std;
int main() {
    int a,b;
    cin>>a>>b;
    int c=a>b?a:b;
    cout<<c<<endl;
    return 0;
}

正在训练的题目-->【 10 】【选择结构】三目运算符表达二 ( LibNumber: 15 )
//三目运算符表达2
#include<iostream>
using namespace std;
int main(){
    int a,b;
    cin>>a>>b;
 
    a>b?cout<<a:cout<<b ; 
 
    return 0;
}


正在训练的题目-->【 11 】【选择结构】switch期末来临了,班长小Q决定将剩余班费X元钱, ( LibNumber: 16 )
//例3.11  期末来临了,班长小Q决定将剩余班费X元钱,用于购买若干支钢笔奖励给一些学习好、表现好的同学。
//已知商店里有三种钢笔,它们的单价为6元、5元和4元。小Q想买尽量多的笔(鼓励尽量多的同学),
//同时他又不想有剩余钱。请您编一程序,帮小Q制订出一种买笔的方案。
#include<iostream>
using namespace std;
int main(){
    int a,b,c,x,y;  //a,b,c分别表示在买笔方案中,6元、5元和4元钱笔的数目
                    //x,y分别表示剩余班费和买完最多的4元笔后剩的钱
    cin>>x;         //输入x
    c=x/4;          //4元笔最多买的数目
    y=x%4;          //求买完c支4元笔后剩余的钱数y
    switch(y){      //判断购买方案
        case 0: a=0; b=0;       break;
        case 1: a=0; b=1; c--;  break;
        case 2: a=1; b=0; c--;  break;
        case 3: a=1; b=1; c-=2; break; 
    }
    cout<<a<<' '<<b<<' '<<c<<endl;     //三个数间以空格隔开
    return 0;
}

正在训练的题目-->【 12 】【循环结构】例4.1 利用for循环,计算输出1+2+…+100的和 ( LibNumber: 17 )
//例4.1  利用for循环,计算输出1+2+…+100的和
#include <iostream>
using namespace std;
int main (){ 
    int sum=0;
    for (int i=1; i<=100 ; ++i) 
        sum+=i;
   cout << sum;
    return 0;
}

正在训练的题目-->【 13 】【循环结构】例4.2 输出1—100之间所有偶数。 ( LibNumber: 18 )
//例4.2 输出1—100之间所有偶数。
#include<iostream>
using namespace std;
int main(){
    for (int i=1;i<=100;i++) //对于1至100之间的每个数都重复操作
        if (i%2==0) cout<<i<<" "; //如果i为偶数,则输出i的值
    return 0;
}

正在训练的题目-->【 14 】【循环结构】例4.2 输出1—100之间所有偶数。示例二 ( LibNumber: 19 )
//例4.2  输出1—100之间所有偶数。示例二
#include <iostream>
using namespace std;
int main(){
    for ( int i=2;i<=100;i+=2 )  //i初值2,终值100,每次增量为2
    cout<<i<<" ";         //输出i的值
    return 0;
}

正在训练的题目-->【 15 】【循环结构】例4.3 利用for循环,分别计算1—100中奇数的和、偶数的和。 ( LibNumber: 20 )
//例4.3  利用for循环,分别计算1—100中奇数的和、偶数的和。
#include <iostream>
using namespace std;
int main(){
    int i,sum1=0,sum2=0;   //sum1、sum2分别偶数和,奇数和,初始化为0
    for(i=1;i<=100; ++i)   //i取1至100之间的每个整数,都重复操作
        if (i%2==0) sum1+=i;   //偶数累加到sum1中
        else sum2+=i;          //奇数累加到sum2中
    cout<<sum1<<"  "<<sum2;    //输出偶数和、奇数和
    return 0;
}

正在训练的题目-->【 16 】【循环结构】例4.3 利用for循环,分别计算1—100中奇数的和、偶数的和。方法二 ( LibNumber: 21 )
//例4.3  利用for循环,分别计算1—100中奇数的和、偶数的和。方法二
#include<iostream>
using namespace std;
int main(){
    int i,j,sum1=0,sum2=0;
    for (i=2,j=1; i<=100; i+=2,j+=2){ //生成偶数和奇数的初始值 
        sum1+=i;                      //偶数i累加到sum1中 
        sum2+=j;                      //奇数j累加到sum2中
    }
    cout<<sum1<<"  "<<sum2;           //输出偶数和、奇数和
    return 0;
}

正在训练的题目-->【 17 】【循环结构】例4.4 利用for循环计算n!的值。分析:n!=1*2*3…*n ( LibNumber: 22 )
//例4.4  利用for循环计算n!的值。分析:n!=1*2*3…*n
#include<iostream>
using namespace std;
int main(){
    long long s;       //Noip2010开始C++语言中long long类型允许使用
    int n;                 //n不能定义为long long,否则for语句死循环
    s=1;
    scanf("%d",&n);
    for (int i=1; i<=n ; ++i) //若s定义为int,当n=13时s的值就溢出了
        s*=i;
    printf("%lld\n",s);       //低版本也可用printf("%I64d\n",s)
    return 0; 
}

正在训练的题目-->【 18 】【循环结构】例4.5 求s=1 +2 +3……+n,当加到第几项时,s的值会超过1000? ( LibNumber: 23 )
//例4.5  求s=1 +2 +3……+n,当加到第几项时,s的值会超过1000?
#include<iostream>
using namespace std;
int main(){
    int n=0,s=0;
    while (s<=1000){
        ++n;
        s+=n;
    }
    cout<<n;
    return 0;
}

正在训练的题目-->【 19 】【循环结构】例4.6 求两个正整数m,n的最大公约数。 ( LibNumber: 24 )
//例4.6  求两个正整数m,n的最大公约数。
#include<iostream>
using namespace std;
int main(){
    int m,n,gcd;
    cin>>m>>n;
    gcd=m>n?n:m;                             //注意此处的特殊写法
    while ( gcd>1&&( m%gcd!=0||n%gcd!=0 ) )
        gcd--;                               //每次减1寻找最大公约数
    cout<<gcd<<endl;                         //输出最大公约数
    return 0;
}

正在训练的题目-->【 20 】【循环结构】例4.6 求两个正整数m,n的最大公约数。方法二 ( LibNumber: 25 )
//例4.6  求两个正整数m,n的最大公约数。方法二
#include<iostream>
using namespace std;
int main (){  
    int m,n;
    cin>>m>>n;
    int r=m%n;
    while(r!=0){  //也可以使用 while (r),c++中 非0即真
        m=n;
        n=r;
        r=m%n;
    }
    cout<<"最大公约数="<<n<<endl;
    return 0;
}