【每天例题】蓝桥杯 C语言 单词去重

单词去重

题目

https://www.lanqiao.cn/problems/2302/learning/?page=1&first_category_id=1&sort=students_count&name=%E5%8D%95%E8%AF%8D

思路分析

1.建立一个数组,注意数组的容纳范围,在这里有一个数据挖坑

2.通过字符串函数,我们可以进行单词的重复判断,并完成去重处理

代码

#include<stdio.h>
#include<string.h>
int main()
{
    int n,i,j;
    char s[101][101];//定义储存单词的数组 
    scanf("%d\n",&n);
    for(i=0;i<n;i++)
    {
        gets(s[i]); 
    }
    for(i=0;i<n-1;i++)
    {
        for(j=i+1;j<n;j++)
        {
            if(strcmp(s[i],s[j])==0)//通过比较字符串的大小比较两个单词是否一样,若是一样,则strcmp的值为0 
            {
                strcpy(s[j],"0");//去重,后面字符串与前面一样,则去掉后面的字符串 
            }
        }
    }
    for(i=0;i<n;i++)
    {
        if(strcmp(s[i],"0")!=0)//判断如果该单没有去重则输出 
        {
            puts(s[i]);
        }
    }
    return 0;
 }

运行结果

 

  

posted @ 2023-04-27 19:09  山远尽成云  阅读(110)  评论(0)    收藏  举报