gpt4 book ai didi

c - 我如何在 C 中打印这个?

转载 作者:太空宇宙 更新时间:2023-11-04 05:56:25 28 4
gpt4 key购买 nike

您好,我是编程新手,请多多包涵。

我想制作一个接受输入 bcdefghijklmnopqrstuvwxy 并输出

的程序
else if (c == 'x')
++nx;

其中 x 是输入的一个字母,输出对输入的每个字母重复。

这是我到目前为止写的:

#include <stdio.h>

main() {

int c;

while((c = getchar()) != EOF) {
printf("else if (c == '%d')\n", c);
printf("\t++n%d;\n", c);
}

return 0;
}

不是返回我想要的输出,而是输出

else if (c == '98')
++n98;
else if (c == '99')
++n99;
else if (c == '100')
++n100;
else if (c == '101')
++n101;
else if (c == '102')
++n102;
...

为什么 c 不能用作变量?

非常感谢您的帮助!

最佳答案

您希望 c == '%c' 按字符比较或 c == %d (不带单引号)按序数值比较,但是您应该真正学会使用数组。看起来您正在尝试以困难的方式编写代码,并使用代码生成器来节省您的输入时间。相反:

 int n[256] = {0};  /* storage for counters, initialized to zero */

和:

n[c]++;  // increment the counter for character c;

您的代码会短得多。

关于c - 我如何在 C 中打印这个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26662975/

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