1.题目:写一函数,将一个字符串中的元音字母复制到另一个字符串,然后输出。
输入
一行字符串
输出
顺序输出其中的元音字母(aeiou)
样例输入
abcde
样例输出
ae
**尝试了各种方法,编译运行都是提示运行错误50%,点开又没有辅助办法,遂上来问问大家。
尝试的办法:
1.修改程序只输出不相同的元音字母,结果也是错误50%
2.不在函数中输出结果,也是一样;
3.用putchar 和 puts输出也是一样;
自己试了好多字符串,结果都是正确的呀。
**
#include <stdio.h>
#include <string.h>
int f1 (char a[],char b,int lim);
char getline(char s[],char a[]);
int main()
{
char a[15];
char b[15];
char c[6];
gets (a);
getline (b,a);
int len = strlen (b);
int i=0;
int j=0;
int x=0;
puts(b);
return 0;
}
int f1 (char a[],char b,int lim){ //将当前欲输出的项与C【】做比较,不存在返回1,存在返回0
int i=0;
int j=0;
int equ=1;
for(i=0;i<lim;i++){
if(b == a[i]) {
equ=0;
break;
}
if(b != a[i]) {
equ =1;
}
}
return equ;
}
char getline(char s[],char a[]){
int i=0;
int k=0;
while (a[i]){
if(a[i] == 'a' || a[i] == 'e' || a[i] == 'i' || a[i] == 'o'\
||a[i] == 'u' ||a[i] == 'A' || a[i] == 'E' || a[i] == 'I' || a[i] == 'O'\
|| a[i] == 'U')
{
s[k]=a[i];
k++;
}
i++;
}
s[k]='\0';
return *s;
}