signed

QiShunwang

“诚信为本、客户至上”

课后自主练习(字符串)1046. 单词表 naive《编程思维与实践》个人学习笔记

2021/3/21 11:08:56   来源:

题目

在这里插入图片描述

思路

C++ 直接放set容器里面输出就好

如果用C语言就把所有数据放在char数组中(别忘记加‘\0’),然后开若干个char*数组来指向各个单词然后qsort排序即可
忘记怎么操作就看看以前的内容 课后自主练习(排序)1022. 邮件地址排序 hard《编程思维与实践》个人学习笔记

C++代码

#include<iostream>
#include<set>
using namespace std;

int main()
{
    int t;
    cin >> t;
    getchar();
    for(int i = 0; i < t; i++)
    {
        string a;
        set<string>s;
        char c;
        c = getchar();
        while(c != '\n')
        {   
            int flag = 0;
            while(c != ' ' && c != '.' && c != '?' && c != '!' && c != ',' && c != '\n')
            {
                a += c;
                c = getchar();
                flag = 1;
            }
            
            if(flag)
                s.insert(a);
            a = "";

            if(c != '\n')
            {
                c = getchar();
            }
        }
        cout << "case #" << i << ":" << endl;
        for(set<string>::iterator it = s.begin(); it != s.end(); it++)//
            cout << *it <<" ";
        cout << endl;
    }
    
}