C语言(去重)输入10个整数赋给一个整数序列,要求对这个序列进行去重操作。所谓去重,是指对这个序列中每个重复出现的数,只保留该数第一次出现的位置,删除其余位置
时间: 2024-03-23 17:40:11 浏览: 50
2014c语言必做题
好的,这是一个简单的去重问题。以下是一个 C 语言代码的实现:
```c
#include <stdio.h>
int main() {
int nums[10];
int unique_nums[10];
int len = 0;
printf("请输入 10 个整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &nums[i]);
}
for (int i = 0; i < 10; i++) {
int j;
for (j = 0; j < len; j++) {
if (nums[i] == unique_nums[j]) {
break;
}
}
if (j == len) {
unique_nums[len++] = nums[i];
}
}
printf("去重后的整数序列:\n");
for (int i = 0; i < len; i++) {
printf("%d ", unique_nums[i]);
}
printf("\n");
return 0;
}
```
其中,我们使用了两个数组 `nums` 和 `unique_nums`,前者存储输入的 10 个整数,后者存储去重后的整数序列。`len` 变量表示 `unique_nums` 中已经存储的元素个数,初始值为 0。
我们使用双重循环遍历 `nums` 数组,对于每个元素,如果它已经在 `unique_nums` 中出现过,则跳过;否则,将它添加到 `unique_nums` 的末尾,并将 `len` 增加 1。
最后,输出去重后的整数序列即可。
阅读全文