情人节

题目描述:

2月14情人节了,我决定造福大家。第2个赞和第14个赞的,我介绍你俩认识…………咱三吃饭…你俩请…”。现给出此贴下点赞的朋友名单,请你找出那两位要请客的倒霉蛋。

输入描述:

输入按照点赞的先后顺序给出不知道多少个点赞的人名,每个人名占一行,为不超过10个英文字母的非空单词,以回车结束。一个英文句点.标志输入的结束,这个符号不算在点赞名单里。

输出描述:

根据点赞情况在一行中输出结论:若存在第2个人A和第14个人B,则输出“A and B are inviting you to dinner…”;若只有A没有B,则输出“A is the only one for you…”;若连A都没有,则输出“Momo… No one is for you …”。

代码

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
class A
{
public:
    int len;
    int index;
    char **s;
    A()
    {
        len=100;
        index=-1;
        s=get(len);
    }

    char **get(int len)
    {
        char **t=(char**)malloc(sizeof(char*)*len);
        for(int i=0;i<len;i++)
            t[i]=(char*)malloc(sizeof(char)*15);
            return t;
    }

    void add(char *temp)
    {
        if(index==len-1)
        {

            char **t=get(len+100);
            for(int i=0;i<len;i++)
            {
                for(int j=0;j<15;j++)
                    t[i][j]=s[i][j];
            }
            s=t;
            len+=100;
        }
        int c=strlen(temp);
        index++;
        for(int i=0;i<=c;i++)
            s[index][i]=temp[i];
    }

    char* prin(int i)
    {
        return s[i-1];
    }

    int  exist(int i)
    {
         if((i-1)<=index)
            return 1;
        else
            return 0;
    }
};
int main()
{
    A a;
    char t[15];
    while(gets(t)&&t[0]!='.')
    {
        a.add(t);
    }
    if(a.exist(2)==0)
    {
        printf("Momo... No one is for you ...\n");
    }
    else if(a.exist(14)==0)
    {
        printf("%s is the only one for you...\n",a.prin(2));
    }
    else
        printf("%s and %s are inviting you to dinner...\n",a.prin(2),a.prin(14));
}

注:水题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值