所以我正在制作一个程序,询问用户是否想要做某事.答案就像Y/N一样简单.我希望该程序能够接受大写和小写"Y".问题是,当我输入时while (answer == 'Y', answer == 'y')
只接受小写"Y".如果我输入while (answer == 'y', answer == 'Y')
我究竟做错了什么?
(更多信息:"answer"是我的"char"变量的名称,我正在使用"iostream","cstdlib"和"string"库)
我的问题并不明确依赖于一段代码,而是更具概念性.
与某些编程语言不同,MATLAB不需要在使用变量之前对其进行明确初始化.例如,在脚本文件的中途定义"myVector"是完全有效的:
myVector = vectorA .* vectorB
Run Code Online (Sandbox Code Playgroud)
我的问题是:将变量(例如上面的'myVector')初始化为零然后为它们赋值,或者在整个程序中保持初始化是否更快?
这是我正在谈论的直接比较:
整个初始化:
varA = 8;
varB = 2;
varC = varA - varB;
varD = varC * varB;
Run Code Online (Sandbox Code Playgroud)
在开始时初始化:
varA = 8;
varB = 2;
varC = 0;
varD = 0;
varC = varA - varB;
varD = varC * varB;
Run Code Online (Sandbox Code Playgroud)
一方面,无缘无故地拥有这些额外的代码行似乎有点浪费.但另一方面,有一点意义是,一次为程序分配所有内存而不是在运行时分散会更快.
有没有人有点洞察力?
所以我有一个do ... while语句应该重复,除非用户输入四件事之一.这四件事有一个中断,他们设置控制while为true的变量,默认为false.如果用户没有输入四个答案中的一个,那么变量将保持为假,这应该使得...再次开始时.它没有.
#include <string>
#include <iostream>
using namespace std;
int main()
{
int q5_answer = 1;
int q5_answerU;
int total_score;
bool q5_valid = false;
//Question_5:
do
{
cout << "Question 5 (#1 is correct)" <<endl;
cout << "1.) Answer 1" <<endl;
cout << "2.) Answer 2" <<endl;
cout << "3.) Answer 3" <<endl;
cout << "4.) Answer 4" <<endl;
cin >> q5_answerU;
switch (q5_answerU)
{
case 1:
cout << "Correct!" <<endl;
q5_valid = true;
(total_score = total_score + 1); …
Run Code Online (Sandbox Code Playgroud) 所以我试图从Java开始(就像在试图让dang接受代码一样).我从Java等下载所有需要的东西(SDK),但当它到达我必须在命令提示符中执行"javac"以编译记事本文件的时候,我只是得到消息说没有命令叫做"javac".
有人想分享一些见解吗?
所以我正在尝试制作一个简单的应用程序来测试用户.它会询问一个问题并且用户回答1,2,3或4.然后应用程序接受该答案,如果正确,则将total_score添加+1,最后将显示该值.一切看起来都很合理,但是当我运行它并且我到达该if (q1_valid == false)
部分时它会跳过cout并运行goto,无论q1_valid是true还是false.
#include <iostream>
using namespace std;
int main()
{
int q1_answer;
int total_score;
bool q1_correct;
bool q1_valid;
Question_1:
cout << "Question 1 (#3 is correct)" << endl;
cout << "1.) Answer 1" <<endl;
cout << "2.) Answer 2" <<endl;
cout << "3.) Answer 3" <<endl;
cout << "4.) Answer 4" <<endl;
cin >> q1_answer;
if (q1_answer == 1)
q1_correct = false;
q1_valid = true;
if (q1_answer == 2)
q1_correct = false;
q1_valid = true;
if …
Run Code Online (Sandbox Code Playgroud) 所以这是我开始编程以来一直存在的问题(不久之前.我仍然不知道为什么我开始使用C++).当我有一些整数变量和用户的输入定义它们,如果用户输入一些其他的不是整数节目怪胎,并运行它被赋予了最后一个命令的无限循环.我不认为需要示例代码,但如果是,我可以很容易地做一个基本的例子.
我正在搞乱C#并且正在制作一个原型GUI(没有附加游戏,只是弄乱了按钮和按钮颜色).我遇到了一个错误:
private void temperValue_Load(object sender, EventArgs e)
{
int temperInt = 23;
temperInt = Convert.ToInt32(temperValue.Text);
if (temperInt >= 70)
{
temperButton.BackColor = System.Drawing.Color.Red;
}
else if (temperInt >= 40 & <= 69)
{
temperButton.BackColor = System.Drawing.Color.DarkOrange;
}
}
Run Code Online (Sandbox Code Playgroud)
在"else if"行中,"<="和"69"都有错误."<="错误是"无效的表达式术语'<='","69)"的四个错误是")预期的","无效的表达式术语')'",以及两个"预期的"错误.
此代码片段之外没有任何变量影响此代码.调用的每个变量都在片段内定义.
(对于任何好奇的人,"脾气"代表"温度")