写一个函数,将一个字符串中的元音字母复制到另一字符串,然后输出。
#include <stdio.h> #include<stdlib.h> #include<string.h> #include<math.h> #define N 50 void vowel(char* p, char* p1);//vowel 元音 int main(void) { char s1[N],s2[N]; int n; puts("请输入一个字符串"); gets(s1); puts("字符串元音字母为:"); vowel(s1, s2); puts(s2); return 0;
}
void vowel(char* p, char* p1) { int i = 0,j=0; while (*(p+i)!='\0') { if (*(p + i) == 'A' || *(p + i) == 'E' || *(p + i) == 'I' || *(p + i) == 'O' || *(p + i) == 'U' || *(p + i) == 'a' || *(p + i) == 'e' || *(p + i) == 'i' || *(p + i) == 'o' || *(p + i) == 'u') {//所有元音字母 *(p1 +j) = *(p + i); j++; } i++; } }
题目解析:
该题的重点在于元...
用户登录可进行刷题及查看答案
该题的重点在于元音字母的判断,通过或条件,凡是元音字母都进行拷贝
#include<stdio.h> void cpy(char s[], char c[]) { int i, j; for (i = 0, j = 0; s[i] != '\0'; i++) { //判断元音字母 if (s[i] == 'a' || s[i] == 'A' || s[i] == 'e' || s[i] == 'E' || s[i] == 'i' ||s[i] == 'I' || s[i] == 'o' || s[i] == 'O' || s[i] == 'u' || s[i] == 'U') { c[j] = s[i]; j++; } } c[j] = '\0'; } int main() { char str[80], c[80]; printf("input string:"); gets(str); cpy(str, c); //将str中的元音字母拷贝到c中 printf("The vowel letters are:%s\n", c); return 0; }
登录后提交答案