gpt4 book ai didi

c - 打印字符串直到出现特定字符

转载 作者:行者123 更新时间:2023-11-30 19:55:01 24 4
gpt4 key购买 nike

我希望打印字符串直到字符 ('e') 出现。
我尝试过的代码:-

#include <stdio.h>
int main() {
int a,i,x;
char b[10];
char ch;
//enter input string
for(i=0;i<10;i++)
scanf("%c",&b[i]);

for(i=0;i<10;i++)
if(b[i]!='e')
printf("%c",b[i]);

return 0;
}

输入:abcdefghij
实际输出:abcdfghij
所需输出:abcd
问题:我哪里错了?在 if block 中放置 break 在这里可以工作吗?

最佳答案

如果您想使用 scanf,这会更干净。

#include <stdio.h>

int main()
{
char b[101];

scanf("%100s", b);

printf("%s\n", b);

return(0);
}

或者甚至更好。

#include <stdio.h>

#define MAX_LENGTH 100

int main()
{
char b[MAX_LENGTH+1]; // add 1 for the terminating zero

scanf("%100s", b);

printf("%s\n", b);

return(0);
}

这个使用 fgets 读取整行。

#include <stdio.h>

#define MAX_LENGTH 100

int main()
{
char b[MAX_LENGTH];

fgets(b, MAX_LENGTH, stdin);

printf("%s", b);

return(0);
}

关于c - 打印字符串直到出现特定字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41513393/

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