3396 - 习题7-7 复制字符串中的元音字母

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 12 MB

写一个函数,将一个字符串中的元音字母复制到另一个字符串中。在主函数中输入一个字符串,通过调用该函数,得到一个有该字符串中的元音字母组成的一个字符串,并输出。

题目输入

一个字符串(一行字符)。

题目输出

该字符串所有元音字母构成的字符串。行尾换行。

输入/输出样例

输入格式

CLanguage

输出格式

auae

C语言解答

#include <stdio.h>

int main()
{
	char a[100];
	char b;
	int i,j;
	for (i=1;;i++)
	{
		b = getchar ();
		if (b!='\n')
		{
		   a[i] = b;
		}
		else
		{break;}
	}
	for (j=1;j<i;j++)
	{
		if (a[j]=='a' ||a[j]=='e' ||a[j]=='i' ||a[j]=='o' ||a[j]=='u')
		{printf("%c",a[j]);}
	}
	printf ("\n");
	return 0;
}

C++解答

#include<stdio.h>
int main()
{
	void cpy(char[], char[]);
	char str[80], c[80];
	gets(str);
	cpy(str, c);
	printf("%s\n", c);
	return 0;
}

void cpy(char s[], char c[])
{
	int i, j;
	for (i = 0, j = 0; s[i] != '\0'; i++)
		switch (s[i])
	{
		case 'A':c[j] = s[i], j++; break;
		case 'a':c[j] = s[i], j++; break;
		case 'E':c[j] = s[i], j++; break;
		case 'e':c[j] = s[i], j++; break;
		case 'I':c[j] = s[i], j++; break;
		case 'i':c[j] = s[i], j++; break;
		case 'O':c[j] = s[i], j++; break;
		case 'o':c[j] = s[i], j++; break;
		case 'U':c[j] = s[i], j++; break;
		case 'u':c[j] = s[i], j++; break;
	}
	c[j] = '\0';
}