Set集合输出用空格分开,最后一位不带空格

Iterator it=hs.iterator();
		while(it.hasNext()){
			System.out.print(it.next());
			if(it.hasNext()){
				System.out.print(" ");
			}
		}

在C语言中,我们可以使用标准库函数`std::set_intersection()`来计算两个集合的交集,然后通过循环遍历并逐个添元素到结果字符串中,每个元素之间空格。这里假设我们有两个整数集合,例如`set1`和`set2`,它们可以是结构体数组或者其他实现了比较操作符的容器。 以下是一个简单的示例: ```c #include <stdio.h> #include <stdlib.h> #include <string.h> #include <set> // 如果你使用的是自定义数据结构,需要在这里定义比较操作 typedef struct MySetItem { int value; } MySetItem; bool compare(MySetItem a, MySetItem b) { return a.value == b.value; } int main() { // 初始化你的两个集合 MySetItem set1[] = {1, 2, 3, 4, 5}; MySetItem set2[] = {4, 5, 6, 7, 8}; // 将集合转换为`std::set` std::set<MySetItem, decltype(compare)> set1_set(compare); for (MySetItem item : set1) { set1_set.insert(item); } std::set<MySetItem, decltype(compare)> set2_set(compare); for (MySetItem item : set2) { set2_set.insert(item); } // 计算交集 std::set<MySetItem, decltype(compare)> intersection(set1_set.begin(), set1_set.end()); intersection.insert(intersection.end(), set2_set.begin(), set2_set.end()); // 构建交集字符串 char result[100]; size_t len = 0; for (const auto &item : intersection) { if (len > 0) { result[len++] = ' '; } result[len++] = static_cast<char>(item.value); // 将整数值转换为字符 } result[len] = '\0'; // 结束字符串 printf("交集: "); // 输出结果,最后一个数后面空格 for (size_t i = 0; i < len - 1; ++i) { printf("%d", result[i]); } printf("%d\n", result[len - 1]); return 0; } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值