输出大写英文字母
题目描述
本题要求编写程序,顺序输出给定字符串中所出现过的大写英文字母,每个字母只输出一遍;若无大写英文字母则输出“Not Found”。
输入
输入为一个以#结束的字符串(少于80个字符)。
输出
按照输入的顺序在一行中输出所出现过的大写英文字母,每个字母只输出一遍。若无大写英文字母则输出“Not Found”。
#include<stdio.h>
#include<string.h>
int main()
{
/*输入*/
char a1[80];//未做处理的数组
char a2[80];//处理后的数组
gets(a1);
/*遍历*/
int k1 = strlen(a1);//计算a1的长度
int i;
int k2 = 0;
for(i=0; i<k1; i++){
if(a1[i]>='A'&&a1[i]<='Z'){
a2[k2] = a1[i];
k2++;//用来计算a2数组的长度
}
}
/*如果全为小写字母,那么a2数组不可能存储
那么K2不可能自增,会等于0;*/
if(k2 == 0){//如果全为小写的情况
printf("Not Found");
}
/*此时a2数组中全部都是大写字母*/
/*用0,1标记区别重复*/
/*双重循环来检验*/
int m,j;
for(i=0; i<k2; i++){
m = 0;
for(j=0; j<i; j++){
if(a2[i] == a2[j]){
m = 1;
}
}
if(m == 0){
printf("%c",a2[i]);
}
}
return 0;
}