用C语言编写在一个字符串中找出元音字母a,e,i,o,u出现的次数。 需要区分 大小写!! 只统计小写元音字 c语言,统计字符串中个元音字母(即a、e、i、o、u)的个数...
C\u8bed\u8a00\uff1a\u7f16\u5199\u7a0b\u5e8f\u7edf\u8ba1\u4ece\u952e\u76d8\u8f93\u5165\u7684\u5b57\u7b26\u4e32s\u4e2d\u5404\u5143\u97f3\u5b57\u6bcd\uff08\u5373A.E.U.I.O\uff09\u7684\u4e2a\u6570\uff0c\u5176\u4e2d\u5b57\u6bcd\u4e0d\u5206\u5927#include "stdio.h"
int count(char c[], char p)
{
int i, count = 0;
for (i = 0; c[i] != '\0'; i++)
if (c[i] == p || c[i] == p + 32)
count++;
return count;
}
int main(void)
{
int i;
char c[50];
int b[5] = { 0 };
gets(c);
printf("A\u4e2a\u6570%d\n", count(c, 'A'));
printf("E\u4e2a\u6570%d\n", count(c, 'E'));
printf("I\u4e2a\u6570%d\n", count(c, 'I'));
printf("O\u4e2a\u6570%d\n", count(c, 'O'));
printf("U\u4e2a\u6570%d\n", count(c, 'U' ));
return 0;
}
void fun (char *s , int num[5] )
{
int k , i = 5 ; //i = 5 \u662f\u6307\u5143\u97f3\u7684\u4e2a\u6570\uff0c\u4e5f\u5c31\u662fnum[0]\u8868\u793aa\u7684\u4e2a\u6570\uff0c\u4ee5\u6b64\u7c7b\u63a8
for (k=0 ; k<i ; k++) //k\u53ea\u662f\u4e2a\u8ba1\u6570
num[k ] = 0 ;
for ( ; *s ; s++) //s\u9996\u5148\u6307\u5411\u5b57\u7b26\u4e32\u7684\u7b2c\u4e00\u4e2a\u5b57\u7b26
{
i= -1 ; //
switch(*s) //\u5224\u65ads\u6307\u5411\u7684\u5b57\u7b26\u662f\u5426\u4e3a\u5143\u97f3
{ ... //\u8fd9\u91cc\uff0c\u5982\u679c*s==a , i = 0\uff0c\u4ee5\u6b64\u7c7b\u63a8\uff0c\u5982\u679c*s\u4e0d\u662f\u5143\u97f3\uff0ci = -1;
}
if ( i>=0)
num[i] ++;
}
}
#include <stdio.h>
void HowVowel(int *pr,char *ps)
{
char v[7]="aeiou";
for(;*ps;ps++)
{
switch(*ps)
{
case 'a':
++pr[0];
break;
case 'e':
++pr[1];
break;
case 'i':
++pr[2];
break;
case 'o':
++pr[3];
break;
case 'u':
++pr[4];
break;
default:
break;
}
}
}
int main(void)
{
char Str[200]="";
int Result[5]={0,},i;
gets(Str);
HowVowel(Result,Str);
for(i=0;i<5;printf("%d ",Result[i++]));
printf("
");
return 0;
}
在你的代码上的修改,去掉|0x20,这个是包含大小写的;
void HowVowel(int *pr,char *ps)
{
char v[7]="aeiou",i;
for(;*ps;ps++)
for(i=0;*(v+i);i++)
if((*ps)==*(v+i))
pr[i]++;
}
修改一下:
void HowVowel(int *pr,char *ps)
{
char v[]="aeiou",i;
int count[26]={0}
for(;*ps;ps++)
if(*ps<='z' && *ps>='a')count[*ps-'a']++;各个字母
for(i=0;v[i];i++)pr[i]=count[v[i]-'a'];
}
只要小写的话
if(*ps==*(v+i))
if((*ps|0x20)==*(v+i))
是一个取巧的办法,可以将‘A'-’Z'转换为'a'-'z'
绛旓細浜屻佹搷浣滆繃绋 涓夈佸弬鑰冪▼搴 include <stdio.h>#include <string.h>/* 绉婚櫎瀛楃涓瞫ource涓殑鎵鏈塩h瀛楃 */void remove(char *source, char ch);void main(){char source[1000];char ch;printf("璇疯緭鍏涓涓瓧绗︿覆锛");gets(source);printf("璇疯緭鍏ュ緟鍒犻櫎瀛楃锛");ch = getchar();remove(...
绛旓細include <stdio.h>#include <string.h> int main() { char line[100]; int alphabetic(char),i; int longest(char[]); printf("input a line:\n"); gets(line); for(i = longest(line);alphabetic(line[i]);i++) printf("%c",line[i]); printf("\n"...
绛旓細flag;//杈撳叆涓涓插瓧绗printf("Input a string:");gets(s);//杈撳叆鎯宠鏌ユ壘鐨勫瓧绗rintf("Input another string:");gets(d);//璋冪敤鍑芥暟锛岃緭鍑虹粨鏋渇lag=SearchString(s,d);if(flag==-1)printf("Not found!\n");elseprintf("Searching results:%d\n",flag);system("pause");...
绛旓細printf("璇疯緭鍏瀛楃涓锛堝皯浜20涓瓧绗锛塡n");gets(a);printf("璇疯緭鍏ヨ鏌ユ壘瀛楃锛");scanf("%c",&c);for(i = 0;i <= strlen(a);i ++){ if(a[i] == c){ n[j++] = i;num++;} } if(num == 0)printf("娌℃湁鎮ㄨ鏌ユ壘鐨勫瓧绗n");else printf("鎮ㄨ鏌ユ壘鐨勫瓧绗︾涓娆″嚭鐜...
绛旓細鍙互浣跨敤strstr()鍑芥暟鏌ユ壘鐗瑰畾瀛楃涓插湪鐩爣瀛楃涓蹭腑绗竴娆″嚭鐜扮殑浣嶇疆锛岀劧鍚庣敤memcpy()鍑芥暟鎴彇瀛楃涓诧紝鍐嶄娇鐢╯trstr()鍑芥暟鏌ユ壘鍑虹幇浣嶇疆锛屼袱娆$粨鏋滄寚閽堜箣闂寸殑瀛楃涓插氨鏄壒瀹氬瓧绗︿箣闂寸殑瀛楃涓诧紝甯屾湜鑳藉府鍒颁綘~
绛旓細min,max;int minid,maxid;int i=0;min=max=str[0];maxid=minid=0;while(str[i]!='\0'){if (str[i]>max){max=str[i];}if (str[i]<min){min=str[i];minid=i;}i++;}i=0;while(str[i]!='\0'){if (str[i]==max){printf("鏈澶у厓绱犳槸%c 浣嶇疆%d\n",max,i);...
绛旓細1銆佹垜浠湪main鍑芥暟涔嬪墠瀹氫箟涓涓嚱鏁般2銆佺劧鍚庢垜浠氨鍙互寮濮缂栧啓锛屽苟涓斿厛杈撳叆鏁翠釜妗嗘灦銆3銆佺劧鍚庢垜浠彲浠ョ敤鍜屽惊鐜紑濮嬭繘琛岃緭鍑恒4銆佸埄鐢ㄦ櫘閫氬彉閲忎篃鍙互浣跨敤鎸囬拡鍙橀噺鏉ヤ功鍐欍5銆佸湪杩欓噷鎴戜滑灏嗕互鎸囬拡鍙橀噺鏉ヤ功鍐欍6銆佷功鍐欏畬姣曞悗锛屾垜浠皢鍙洖鍘籱ain鍑芥暟涓繘琛岀洿鎺ヨ皟鐢ㄣ
绛旓細include <string.h> include <stdlib.h> void main(){ char str[400],a[30][30],*p;int i=0,j=0,k,flag=0;gets(str);p=str;for(;*p!='\0';p++){ if(*p>='0'&&*p<='9'){ a[i][j++]=*p;flag=1;} else if(flag==1){ i++;j=0;flag=0;} } for(k=0;k<=i...
绛旓細include <stdio.h> int main() { char s[100];int i;scanf("%s",s);for(i = 0;s[i];i++) { if(a[i] >= 'a' && a[i] <= 'z') s[i] -= 'a' - 'A';else if(a[i] >= 'A' && a[i] <= 'Z') a[i] -= 'A' - 'a';} printf("%s\n",s);return ...
绛旓細int main(){ char str[1000]; //瀛楃涓 memset(str,1000,0);scanf("%s",str);char ch;int pos1(0),pos2(0);char s1[500],s2[500];memset(s1,500,0);memset(s2,500,0);for(int i=0;i<strlen(str);i++){ ch=str[i];if(ch<='9'&& ch>='0'){ //缁熻鏁板瓧涓暟 s1[...