m0_63152300 2021-12-16 08:54 采纳率: 100%
浏览 98
已结题

使用c语言,详细过程能写一下嘛

【问题描述】
针对目前电话用户经常受到垃圾电话骚扰的现状,市场上推出了各种垃圾电话拦截软件,这里尝试实现垃圾电话拦截软件的部分功能,主要实现对来电进行判断,确定该来电是否需要拦截,我们采取的垃圾电话判定规则是:或者是黑名单中或者以400开头。黑名单可以定义为全局的指针数组。编写两个自定义函数,一个自定义函数的功能是判断一个数字串是否以400开头,另一个自定义函数的功能是判断一个数字串是否在黑名单中。主函数负责输入一个电话号码,然后分别调用自定义函数对该号码进行判断,并输出该号码是否需要被拦截的信息。
这个题只完成一部分功能:定义主函数和一个自定义函数,完成判断一个数字串是否以400开头【输入形式】使用% s 得到电话号码
【输出形式】
【输入/输出样例1】

  • 写回答

2条回答 默认 最新

  • CSDN专家-link 2021-12-16 09:00
    关注

    定义一个char型的二维数组,存储黑名单,用scanf输入电话号码,用strcmp与黑名单号码逐个匹配。

    #include <stdio.h>
    
    char blacklist[100][12] = {"13011223440","15040889218","18023448828"};
    int lists = 3;
    
    int isblack(char *tele)
    {
        for(int i=0;i<lists;i++)
            if(strcmp(tele,blacklist[i]) == 0)
                return 1;
        return 0;
    }
    int is400(char *tele)
    {
        if(strncmp(tele,"400",3) == 0)
            return 1;
        return 0;
    }
    int main()
    {
        char tele[12];
        scanf("%s",tele);
        if(is400(tele) || isblack(tele))
            printf("是垃圾电话");
        else
            printf("不是垃圾电话");
        //
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月24日
  • 已采纳回答 12月16日
  • 创建了问题 12月16日