我做错了什么?我需要这个,用'if'打印所有大写字母,但有些错误,因为它不止一次打印一个字母!任何帮助表示赞赏:)
//Uppercase letters using if;
#include<iostream>
using namespace std;
int main()
{
char character='A';
label1:
if(character>='A')
if(character>='Z')
goto label2;
else
{
cout<<character<<endl<<character++<<endl;
goto label1;
}
label2:
cout<<"End"<<endl;
return 0;
}
答案 0 :(得分:3)
您将character
变量增加两次。我发布这个答案只是为了告诉你什么是技术错误,但是有一个更大的概念,即goto
的使用。我建议你阅读一些关于C ++的入门书。
//Uppercase letters using if;
#include<iostream>
using namespace std;
int main()
{
char character='A';
label1:
if(character>='A')
if(character>'Z'))
goto label2;
else
{
cout<<character<<endl;
character++;
goto label1;
}
label2:
cout<<"End"<<endl;
return 0;
}
答案 1 :(得分:2)
它不止一次打印每个字母的原因如下:
cout<<character<<endl<<character++<<endl;
^^^^^^^^^ ^^^^^^^^^
上述每一项都会导致character
被写入cout
。
答案 2 :(得分:2)
有点晚了,但是:
#include "stdafx.h"
#include<iostream>
#include <string>
using namespace std;
int main()
{
string s("ABCDEFGHIJKLMNOPQRSTUVWXYZ");
if (1) goto label1;
cout << "End" << endl;
return 0;
label1:
cout << s << endl;
return 0;
}
答案 3 :(得分:1)
你的代码错过了两点 -
Z
cout<<character<<endl<<character++<<endl;
变化:
if(character>='Z')
指向 - &gt; if(character>'Z')
已编辑字符++(这是错字)
cout<<character<<endl<<character++<<endl;
指向 - &gt; cout<<character++<<endl;