解题思路:
定义两个字符数组,在第一个输入的数组中判断字符串中是否有元音字母,如果有则输入第二个数组。
然后由第二个数组执行元音字母的排序。
最后调用输出即可。
注意事项:
注意多语句别漏了花括号
参考代码:
#include <stdio.h> #include <string.h> int yuanyin(char a[],char b[]) { int i,j=0,k,l; char x; l=strlen(a); for(i=0;i<l;i++) { if(a[i]=='a'||a[i]=='e'||a[i]=='i'||a[i]=='o'||a[i]=='u') { b[j]=a[i]; j++; } } b[j]='\0'; k=strlen(b); for(i=0;i<k;i++) { for(j=i;j<k;j++) { if(b[i]>b[j]) { x=b[j];b[j]=b[i];b[i]=x; } } } return 0; } int main() { char a[100],b[100]; gets(a); yuanyin(a,b); puts(b); return 0; }
0.0分
77 人评分
#include <stdio.h> #include <string.h> #define N 100 int main() { char str1[N]; gets(str1); for(int i=0;i<N;i++) { switch(str1[i]) { case 'a': putchar(str1[i]); //i++; break; case 'e': putchar(str1[i]); //i++; break; case 'i': putchar(str1[i]); //i++; break; case 'o': putchar(str1[i]); //i++; break; case 'u': putchar(str1[i]); //i++; break; default: //i++; break; } } return 0; } 为什么 我这样写过不了
#include<stdio.h> #include<string.h> int t(char a[], char b[]) { int i, j, k = 0; i = strlen(a); for (j = 0; j <= i; j++) if (a[j] == 'a' || a[j] == 'e' || a[j] == 'i' || a[j] == 'o' || a[j] == 'u') { b[k] = a[j]; k++; } b[k] = '\0'; return 0; } int main() { char a[100], b[100]; gets(a); t(a, b); puts(b); return 0; }
#include <stdio.h> void f(char c){ while((c=getchar())!='\n'){ if(c=='a'||c=='e'||c=='i'||c=='o'||c=='u') printf("%c",c); } } int main(){ char c; f(c); } 我不理解,这个为什么一直时间超限啊
#include<bits/stdc++.h> using namespace std; void TiQu(char a[]) { gets(a); for(int i=0;i<strlen(a);i++) { if(a[i]=='a'||a[i]=='e'||a[i]=='i'||a[i]=='o'||a[i]=='u') cout<<a[i]; } } int main() { char a[100000]; TiQu(a); }
#include<stdio.h> #include<string.h> void look_for_vowel(char *p,char *pf); int main(void) { char str_1[100]={0},str_2[100]={0}; gets(str_1); look_for_vowel(str_1,str_2); puts(str_2); } void look_for_vowel(char *p,char *pf) { int i,j=0; for(i=0; p[i]!='\0'; i++) { 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') { pf[j++]=p[i]; } } pf[j]='\0'; }
#include<stdio.h> #include<string.h> void fun(char a[]){ int l; l=strlen(a); for(int i=0;i<l;i++){ if(a[i]=='a'||a[i]=='e'||a[i]=='i'||a[i]=='o'||a[i]=='u'){ printf("%c",a[i]); } } } int main(){ char a[10000]; gets(a); fun(a); }
15行的 b[j]='\0';的作用是什么啊,没有它程序还是能正常运行。
御坂10032 2021-02-10 20:25:24 |
puts()输出字符串时要遇到' ’也就是字符结束符才停止,所以要加上一句b[j] = ' ';
矩阵乘法 (C++代码)浏览:1662 |
【亲和数】 (C语言代码)浏览:530 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:790 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:798 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:1015 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:701 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:490 |
杨辉三角 (C语言代码)浏览:504 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:672 |
2005年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:636 |
我好菜 2021-11-01 10:38:39 |
switch-case的控制表达式只能是整数型
夜云空 2022-01-11 19:21:07 |
顺序问题