gpt4 book ai didi

c - 如何将字符串中的元音更改为符号?

转载 作者:行者123 更新时间:2023-12-02 00:27:44 25 4
gpt4 key购买 nike

我需要使用 C 将字符串中的元音更改为 $。我知道我需要使用 for 循环并且我很确定我在正确的轨道上,但我无法让它工作.

这是我的代码:

#include <stdio.h>
#include <string.h>

int main(void)
{
char input[50];
char i;
int j = 0;

printf("Please enter a sentence: ");
fgets(input, 50 , stdin);

for (j = 0; input[i] != '\0'; j++)
if (input[i]=='a'||input[i]=='e'||input[i]=='i'||input[i]=='o'||input[i]=='u')
{
input[i]= '$';
printf("Your new sentence is: %s", input);
}

return 0;
}

我知道我的错误不是很大,但我就是看不到它。这是家庭作业,所以我不想要这样的解决方案,只是一些建议,这样我才能真正从中学习。

编辑:
感谢那些人,我摆脱了“j”,它现在可以工作了,但是当我运行程序时,它会为它更改的每个元音输出一个新行。我如何对其进行编码,使其仅输出最后一行,即所有元音都已更改?

最佳答案

你在索引上犯了一个小错误:

for (j = 0; input[i] != '\0'; j++)
^ ^

应该是

for (i = 0; input[i] != '\0'; i++)

其实可以省略j:

int main(void)
{
char input[50];
int i;

printf("Please enter a sentence: ");
fgets(input, 50 , stdin);

for (i = 0; input[i] != '\0'; i++)
{
if (input[i]=='a'||input[i]=='e'||input[i]=='i'||input[i]=='o'||input[i]=='u')
{
input[i]= '$';
}
}
printf("Your new sentence is: %s", input);
return 0;
}

关于c - 如何将字符串中的元音更改为符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8227296/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com