『ACM C++』 PTA 天梯赛练习集L1 | 007-0011

  真的是忙头晕了,学业、ACM打题、班级活动、自学新东西,哇这充实的大学~

------------------------------------------------L1-007----------------------------------------------------------

念数字

输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。十个数字对应的拼音如下:

0: ling
1: yi
2: er
3: san
4: si
5: wu
6: liu
7: qi
8: ba
9: jiu

输入格式:

输入在一行中给出一个整数,如:1234

提示:整数包括负数、零和正数。

输出格式:

在一行中输出这个整数对应的拼音,每个数字的拼音之间用空格分开,行末没有最后的空格。如 yi er san si

输入样例:

-600

输出样例:

fu liu ling ling

------------------------------------------------L1-007----------------------------------------------------------

注:水题,熟练使用字符指针数组就没有问题了。如这里的:const char* proun[10] = { "ling", "yi", "er", "san","si","wu","liu","qi","ba","jiu" };

#include<stdio.h>
#include<string.h>
#include<string>
using namespace std;
const char* proun[10] = { "ling", "yi", "er", "san","si","wu","liu","qi","ba","jiu" };
char Input[999999];
int length;
int main()
{
    scanf("%s",&Input);
    length = strlen(Input);
    for(int i = 0;i<length;i++)
    {
        if(Input[i] == '-') printf("fu");
        else printf(proun[Input[i] - '0']);
        if(i!=length-1) printf(" ");
        else printf("\n");
    }
    return 0;
}

------------------------------------------------L1-008----------------------------------------------------------

求整数段和

给定两个整数A和B,输出从A到B的所有整数以及这些数的和。

输入格式:

输入在一行中给出2个整数A和B,其中100AB100,其间以空格分隔。

输出格式:

首先顺序输出从A到B的所有整数,每5个数字占一行,每个数字占5个字符宽度,向右对齐。最后在一行中按Sum = X的格式输出全部数字的和X

输入样例:

-3 8

输出样例:

   -3   -2   -1    0    1
    2    3    4    5    6
    7    8
Sum = 30

------------------------------------------------L1-008----------------------------------------------------------

注解:水题,一个循环带过

#include<stdio.h>

int A,B,counter,sum;
int main()
{
    scanf("%d%d",&A,&B);
    counter = sum = 0;
    for(int i = A;i<=B;i++)
    {
        sum+=i;
        if(counter == 5)
        {
            counter = 0;
            printf("\n");
        }
        printf("%5d",i);
        counter++;
    }
    printf("\nSum = %d\n",sum);
    return 0;
}

猜你喜欢

转载自www.cnblogs.com/winniy/p/10486995.html