输入若干个字符串(最多10个),求出每个字符串的长度,并打印最长字符串的内容。以“stop”作为输入的最后一个字符串。

输入若干个字符串(最多10个),求出每个字符串的长度,并打印最长字符串的内容。以“stop”作为输入的最后一个字符串。

#include 
#include 
int main()
{
	int i,max=0,num=0;
	char str1[10][100];//据我理解前面个数后面长度
	int a[10];//存放长度数据
	for(i=0;i<10;i++)
	{
		gets(str1[i]);//scanf 会遇到空格会结束。 
		//printf("录入了%s\n",str1[i]);调试用
		a[i] = strlen(str1[i]);
		if(a[i]>max)
		{
			max = a[i];
			num = i;
		}
		
		if(str1[i][0]=='s'&&str1[i][1]=='t'&&str1[i][2]=='o'&&str1[i][3]=='p')
		//注意这里的为什么不写成str1[i]="stop"因为"stop" != "stop\0\0\0\0\0\0\0/*后边用\0填满*/" 
		{
		//	printf("判断了\n");//调试时发现根本不进入判断
			break;
		}
	}
	printf("最长字符串的内容:%s",str1[num]);
	
	return 0;
}

你可能感兴趣的:(输入若干个字符串(最多10个),求出每个字符串的长度,并打印最长字符串的内容。以“stop”作为输入的最后一个字符串。)