C语言代码:输入10个整数,输出其中不同的数,即如果一个数出现了多次,只输出一次。
时间: 2023-09-07 10:04:49 浏览: 82
### 回答1:
#include<stdio.h>
int main(){
int n,i,j,k=0;
int a[10];
int b[10];
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
b[i]=0;
}
for(i=0;i<n;i++){
if(b[i]==0){
b[i]=1;
printf("%d ",a[i]);
for(j=i+1;j<n;j++){
if(a[i]==a[j])
b[j]=1;
}
}
}
return 0;
}答案:我可以为您提供C语言代码来实现您的要求:
### 回答2:
C语言代码:
```c
#include <stdio.h>
int main() {
int num[10];
int distinctNum[10];
int count = 0;
int isDistinct;
printf("请输入10个整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &num[i]);
}
for (int i = 0; i < 10; i++) {
isDistinct = 1;
for (int j = 0; j < count; j++) {
if (num[i] == distinctNum[j]) {
isDistinct = 0;
break;
}
}
if (isDistinct) {
distinctNum[count] = num[i];
count++;
}
}
printf("不同的数有:");
for (int i = 0; i < count; i++) {
printf("%d ", distinctNum[i]);
}
return 0;
}
```
该代码首先使用一个数组`num[]`来存储输入的10个整数,然后使用另一个数组`distinctNum[]`来存储不同的数。接下来,逐个遍历`num[]`中的数字,并与`distinctNum[]`中已有的数字进行比较,判断是否相同。如果相同,则不再将该数字加入到`distinctNum[]`中。最后,遍历输出`distinctNum[]`中的数字,即为所有不同的数。
这段代码的基本思路是使用两个数组,通过遍历来比较和筛选出不同的数,然后输出。
### 回答3:
可以使用数组来解决该问题,首先定义一个大小为10的整型数组存储输入的10个整数。然后使用一个嵌套循环遍历数组,比较每个数与后面的数是否相同,如果相同,则跳过该数,继续比较下一个数。如果不相同,则输出该数并将其标记为已输出。
以下是一个示例代码:
```c
#include <stdio.h>
int main() {
int arr[10]; // 存储输入的10个整数
int output[10] = {0}; // 标记输出过的数,默认为0表示未输出
printf("请输入10个整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
printf("不同的数为:");
for (int i = 0; i < 10; i++) {
if (output[i] == 0) {
printf("%d ", arr[i]);
for (int j = i + 1; j < 10; j++) {
if (arr[i] == arr[j]) {
output[j] = 1; // 标记为已输出
}
}
}
}
return 0;
}
```
运行程序后,依次输入10个整数,程序将输出其中不同的数,即每个数只输出一次。