2014秋C++第12周OJ题目参考

课程主页在 http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在 云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。 


2447: 求N组数的最大公约数

Description
计算一组数的最大公约数
Input
第一行是数据的组数N,从第二行是N组由两个整数(a和b)构成的输入,a和b之间用空格隔开,每组输入单独占一行
Output
每组的两个整数(a和b)的最大 公约数,每个结果独占一行
Sample Input
3
98 72
80 36
12 144
Sample Output
2
4
12

参考解答:

#include
using namespace std;
int gcd(int,int);
int main()
{
    int i,n,a,b,c;
    cin>>i;
    for(n=1; n<=i; n++)
    {
        cin>>a>>b;
        c=gcd(a,b);
        cout<


2448:分离正整数中的各位数

Description
输出正整数的各位数
Input
若干个用空格隔开的正整数(输入个数不确定,键盘输入时,以CTRL-Z结束)
Output
每个正整数的各位数字,个位数在前,十位数紧随,最高位在最后,每位数后面有一个空格。每个正整数对应的输出占一行。
Sample Input
123 9523 89
Sample Output
3 2 1 
3 2 5 9 
9 8

参考解答:

#include
using namespace std;
int main()
{
    int n,a;
    while(cin>>n)
    {
        a=n;
        while(a>0)
        {
            cout<


2449:刑警的射击成绩

Description
刑警培训结束,进行了射击科检验。教官要对学员射击的成绩进行分析,得出各分数段人数统计。
Input
输入若干个0-10间的整数(最高10环,脱靶为0)表示成绩,人数不确定,输入以一个0-10以外的数作为。
Output
各分数段(A:9环以上,B:7环以上,C:5环以上,D:不足5环)的人数,每项成绩占一行
Sample Input
9 7 3 5 8 5 6 7 9 10 0 6 99
Sample Output
A:3
B:3
C:4
D:2

参考解答:

#include
using namespace std;
int main()
{
    int x,A=0,B=0,C=0,D=0;
    while((cin>>x)&&!(x>10||x<0))
    {
        switch(x)
        {
        case 0:
        case 1:
        case 2:
        case 3:
        case 4:
            D++;
            break;
        case 5:
        case 6:
            C++;
            break;
        case 7:
        case 8:
            B++;
            break;
        case 9:
        case 10:
            A++;
        }
    }
    cout<<"A:"<





================ 迂者 贺利坚 CSDN博客专栏===============
 |== IT学子成长指导专栏 专栏文章的分类目录(不定期更新) ==|
 |== C++ 课堂在线专栏  贺利坚课程教学链接(分课程年级) ==|
 |== 我写的书——《逆袭大学——传给IT学子的正能量》    ==| 
===== 为IT菜鸟起飞铺跑道,和学生一起享受快乐和激情的大学 =====

你可能感兴趣的:(2014C++教学)