C编程——给一串数,打印出里面和为100的两个数

**1、**程序

#include <stdio.h>
#include <string.h>

int main()
{
	int arr[99] = {0};
	int count = 0;
	
	printf("请输入需要进行查找的数列:");
	
	do{
		scanf ("%d",&arr[count]);
		count++;
	}while( getchar() != '\n');
	
	int table[99][99] = {0};
	int i;
	int j;
	int flag = 0;
	int len = sizeof(arr) / sizeof(arr[0]);
	
	for(i = 0; i < len; i++)
	{
		for(j = i + 1; j < len; j++)
		{
			table[i][j] = arr[i] + arr[j];
		}
	}
	
	for (i = 0; i < len; i++)
	{
		for (j = 0; j < len; j++)
		{
			if( table[i][j] == 100 )
			{
				printf("数列中和为100的两个数为:%d、%d\n",arr[i],arr[j]);
				flag = 1;
			}	
		}
	}
	
	if(flag == 0)
	{			
		printf("数列中不存在和为100的两个数!\n");
	}
			
	return 0;
}

**2、**测试结果
I、请输入需要进行查找的数列:1 22 33 99 78 0 4 98
数列中和为100的两个数为:1、99
数列中和为100的两个数为:22、78
II、请输入需要进行查找的数列:1 44 66 98 29 38
数列中不存在和为100的两个数!

猜你喜欢

转载自blog.csdn.net/ypjsdtd/article/details/84584428