while(cin>>t);是错误写法吗
查看原帖
while(cin>>t);是错误写法吗
1033703
0wuyu0楼主2024/4/28 02:02
#include<iostream>
#include<cmath>
#include<cstring>
using namespace std;
void change(char*str)
{
	while(*str)
	{
		if(*str>='A'&&*str<='Z') *str=*str-'A'+'a';
		str++;
	}
}
bool judge(char*s,char*t)
{
	while(*s && *t)
	{
		if(*s!=*t) return false;
		s++;
		t++;
	}
	return *s == '\0';
}
int main()
{
	const string endMarker = "-1";
	char s[12],t[12];int i=0,m=0;
	cin>>s;
    change(s);
    int sum=0;
	while(cin>>t&& t != endMarker)
	{
	  
		change(t);
		if(judge(s,t)) sum++;
		if(judge(s,t)&&sum==1) m+=i;
        while(t[i]!='\0')
		{
			i++;
			
		}
		i++;
	
	}
	if(sum>0) cout<<sum<<" "<<m;
	if(sum==0) cout<<"-1";
	return 0;
}
while(cin>>t);

这种写法不能满足要求吗。。。我只是想用每次输入的字符串单词对比我的第一行单词。。。

2024/4/28 02:02
加载中...