你能帮帮我吗?我需要从一个字符串中输出元音,该字符串是从一个文件中读取的。为什么我的条件不适合那个呢?
if(mainArr[i]==vows[j])
{
res[l]=vows[j];
l++;
}我成功地读取了字符串,但我猜需要使用#include <string.h>中的一个特殊函数来进行比较。你能帮我找到另一种比较字母的变体吗?
我的代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
FILE *fileIn;
int i,j,l,k,z;
char mainArr[40];
char vows[]={'a','e','i','o','y','u','A','E','I','O','Y','U'};
char res[30];
if ((fileIn = fopen ("1.txt","r"))!=NULL)
{
fgets(mainArr,40-1,fileIn);
puts(mainArr);
for (i=0;i<strlen(mainArr);i++)
{
for(j=0;j<strlen(vows);j++)
{
if(mainArr[i]==vows[j])
{
res[l]=vows[j];
l++;
}
}
}
for (k=0;k<l;k++)
{
printf("%c",res[k]);
}
}
return 0;
}发布于 2017-02-24 07:04:13
我的错误是:
strlen()用于誓言,因为vows不是字符串。lint main() { FILE *fileIn;FILE *fileOut;int i,j,l=0,k,z;char mainArr40;char vows[]={'a','E','I','O','y','u','A','e','i','o','Y','U'};char res30;if ((fileIn = fopen ("1.txt","r"))!=NULL) { fgets(mainArr,40-1,fileIn);puts(mainArr);for (i=0;i
感谢您的帮助!
https://stackoverflow.com/questions/42427699
复制相似问题