我试了几个例子都对,为什么只有30分???
查看原帖
我试了几个例子都对,为什么只有30分???
470881
郭亮20510507027楼主2021/10/22 08:28
#include <stdio.h>

int main()
{
	int n,i,j,k,cnt=0,flag=0;
	scanf("%d",&n);
	int arr[n];
	for(i=0;i<n;i++)
	{/*输入数据*/ 
		scanf("%d",&arr[i]);
	}
	for(i=0;i<n;i++)//要被检索的数 
	{
		for(j=0;j<n;j++)//第一个加数 
		{
			for(k=j+1;k<n;k++)//第二个加数 
			{
				if(i!=j&&i!=k&&arr[i]==arr[j]+arr[k])
					{/*两个加数都不能是被检索的数,且两个加数不同*/
						cnt++;
						flag=1;//找到第一组加数等于被检索数,就跳出第2,3层循环 
						break;
					}
			}
			if(flag==1)
				break;
		}
	}
	printf("%d",cnt);
	return 0;
}
2021/10/22 08:28
加载中...