PTA-7-1 輸出大寫英文字母 (15分)(C語言)

就這 ?發表於2020-12-15

本題要求編寫程式,順序輸出給定字串中所出現過的大寫英文字母,每個字母只輸出一遍;若無大寫英文字母則輸出“Not Found”。
輸入格式:
輸入為一個以回車結束的字串(少於80個字元)。
輸出格式:
按照輸入的順序在一行中輸出所出現過的大寫英文字母,每個字母只輸出一遍。若無大寫英文字母則輸出“Not Found”。
輸入樣例1:

FONTNAME and FILENAME

輸出樣例1:

FONTAMEIL

輸入樣例2:

fontname and filrname

輸出樣例2:

Not Found

#include<stdio.h>
#include<math.h>
int main()
{
	char str[80];
	int i=0,j=0,k=0,n=0,flag1=1,flag2=1;
	while((str[i]=getchar())!='\n')
	{
		i++;
		n++;
	}
	char arr[80];
	for(i=0;i<=n;i++)
	{ 
		if(str[i]>=65&&str[i]<=90)
		//將大寫英文字母存入另一陣列 
		{
			arr[j]=str[i];
			j++;
			k++;
			flag1=0;
		}
	}
	if(flag1==1)//判斷是否有大寫英文字母 
	{
		printf("Not Found");
	}
	else//如果有大寫字母
	{
		printf("%c",arr[0]); //先輸出第一個大寫字母
		for(j=1;j<=k;j++)//從第二個字母開始(如果存在)
		{
			flag2=1; //重新定義 
			for(i=j;i>=1;i--)
			{
				if(arr[j]!=arr[i-1])
				{
					continue;	
					//與前面每個字母比對
				}
				flag2=0;
				break;
			}	
			if(flag2==1)//如果與前面所有的字母不同則輸出 
			{
				printf("%c",arr[j]);
			}
		} 	
	}
	return 0;
}

PS: 如果有幫到你,希望留個贊,謝謝!

相關文章