问题已解决,是我之前考虑欠佳。
以下为AC代码。
```c
#include<stdio.h>
int main()
{
int n, i, j, k, count = 0;
int numbers[100];
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
scanf_s("%d", &numbers[i]);
}
int mark[100];
for (i = 0; i < n; i++)
{
mark[i] = 0;
}
for (i = 0; i < n; i++)
{
for (j = i + 1; j < n; j++)
{
for (k = 0; k < n; k++)
{
if (mark[k] == 0 && k != i && k != j && numbers[i] + numbers[j] == numbers[k])
{
count++;
mark[k] = 1;//标记一下,表明这个数已经做过两数之和了
continue;
}//注意:1+4=5和2+3=5这也算重复
}
}
}
printf("%d", count);
return 0;
}
```
by ZhaoruBUPT @ 2020-02-09 12:42:03