#include <stdio.h> int Unique_Int ( int a[ ], int n ); int main() { int a[100], n, k, count; scanf("%d", &n); for(k=0; k<n; k++) scanf("%d", &a[k]); count = Unique_Int (a, n); printf("%d ", count ); for(k=0; k<count; k++) printf("%d ", a[k] ); return 0; } /* 请在这里填写答案 */逐行注释改代码并解释相关变量的含义
时间: 2024-03-13 11:48:08 浏览: 46
```
#include <stdio.h>
// 函数原型:在数组a中寻找不重复的整数,返回不重复整数的个数
int Unique_Int(int a[], int n);
int main() {
int a[100], n, k, count;
// 输入数组长度
scanf("%d", &n);
// 循环输入数组元素
for (k = 0; k < n; k++)
scanf("%d", &a[k]);
// 调用Unique_Int函数,返回不重复整数的个数
count = Unique_Int(a, n);
// 输出不重复整数的个数
printf("%d ", count);
// 循环输出不重复整数
for (k = 0; k < count; k++)
printf("%d ", a[k]);
return 0;
}
// 函数定义:在数组a中寻找不重复的整数,返回不重复整数的个数
int Unique_Int(int a[], int n) {
int i, j, k;
// 每次循环找出一个不重复的整数
for (i = 0; i < n; i++) {
for (j = i + 1; j < n;) {
// 如果出现重复整数,则将其后面的整数向前移动一位
if (a[j] == a[i]) {
for (k = j; k < n; k++)
a[k] = a[k + 1];
n--; // 整数个数减1
} else
j++; // 继续往后寻找
}
}
return n; // 返回不重复整数的个数
}
```
变量含义:
- `a`:整型数组,存储需要寻找不重复整数的数组;
- `n`:整型变量,存储数组元素个数;
- `k`:整型变量,循环计数器;
- `count`:整型变量,存储不重复整数的个数;
- `i`、`j`、`k`:整型变量,循环计数器,在函数`Unique_Int`中使用。
阅读全文