繁体   English   中英

不会只打印一个字母就打印所有字母,但需要在输入的字母后打印每个字母

[英]not printing out all alphabet just one letter but it needs to print out every letter after the one that was entered

到目前为止,它只是在a之后打印出z,而在a是b之后打印出来,所以我希望它打印bcdef g .... z

#include <iostream>

using namespace std;

int main() 
{
   char a = 'a';
   while (a < 'z')
   a++; 
  cout << a; 
}

我只是在寻找一些帮助,然后在那之后我需要输入2个字母并用2个字母来做,但这对我来说我知道这不是一个代码编写服务,只是在寻找有关如何做的帮助那。 谢谢任何帮助都很好

在循环中,您需要将多个语句括在大括号中:

int main() 
{
    char a = 'a';
    while (a < 'z'){
        a++; 
        cout << a; 
    }
    cout << '\n'; // let's have a line break at the end
}

否则,仅在循环完成后才运行cout语句。

可悲的是,尽管此代码不可移植,因为C ++标准对字母字符的编码方式几乎没有要求。 并且它们连续和连续不是必须的。 便携式解决方案基于明显的薄弱环节

int main()
{
    std::cout << "abcdefghijklmnopqrstuvwxyz\n";
}

; 如果要从某个值打印所有字母,请在

int main() {
    const char* s = "abcdefghijklmnopqrstuvwxyz";   
    char a = 'k'; // print from k onwards, for example
    for ( ; *s /*to prevent overrun*/ && *s != a; ++s);     
    std::cout << s; 
}

需要将cout放入循环中:

#include <iostream>

int main() 
{
   char a = 'a';
   while (a < 'z')
   {
      a++; 
      std::cout << a << " "; 
   }
}

还添加了一个空格来区分不同的字母。 并删除了using namespace std; 因为不建议这样做。

只有在while中执行的东西才是a ++; 因为在属于while的语句周围没有括号。 在括号中将多个语句括起来。 或者像在这种情况下,可以将它们合并为一个语句。

#include <iostream>

int main() 
{
    char a = 'a';
    while (a < 'z')
        std::cout << ++a;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM