c++ - if/else 遇到问题
问题描述
我的部分代码有问题。如果我选择选项 A,它会运行并给我正确的答案,但是,如果我选择选项 S 或 M,它什么也没给我,只会去它应该去的地方。已经尝试将 if 更改为 else if,但它显示“预期语句”。
对不起,如果有些句子是葡萄牙语,但这里是:
if ((opcao2 == 'A') || (opcao2 == 'a'))
{
if ((LinhaA != LinhaB) && (ColunaA != ColunaB)) //confirmar que se pode fazer a subtraçao entre as duas matrizes
{
printf("\nN%co %c poss%cvel somar as matrizes A + B!\nInsira novos valores\n", 198, 130, 161);
fprintf(ficheiro_out, "\n\nNão é possível somar as matrizes A + B!\nInsira novos valores\n");
}
printf("\n\n\n");
fprintf(ficheiro_out, "\n\n\n");
if ((LinhaA == LinhaB) && (ColunaA == ColunaB))
{
printf("\n%c poss%cvel somar as matrizes A + B!\n", 144, 161);
fprintf(ficheiro_out, "\nÉ possível somar as matrizes A + B!\n");
}
printf("\n\n\n");
fprintf(ficheiro_out, "\n\n\n");
}
break;
if ((opcao2 == 'S') || (opcao2 == 's'))
{
if((LinhaA != LinhaB) && (ColunaA != ColunaB)) //confirmar que se pode fazer a subtraçao entre as duas matrizes
{
printf("\nN%co %c poss%cvel somar as subtrair A - B!\nInsira novos valores\n", 198, 130, 161);
fprintf(ficheiro_out, "\n\nNão é possível subtrair as matrizes A - B!\nInsira novos valores\n");
}
printf("\n\n\n");
fprintf(ficheiro_out, "\n\n\n");
else if ((LinhaA == LinhaB) && (ColunaA == ColunaB))
{
printf("\n%c poss%cvel subtrair as matrizes A - B!\n", 144, 161);
fprintf(ficheiro_out, "\nÉ possível subtrair as matrizes A - B!\n");
}
printf("\n\n\n");
fprintf(ficheiro_out, "\n\n\n");
}
break;
if ((opcao2 == 'M') || (opcao2 == 'm'))
{
if (ColunaA != LinhaB) //confirmar que se pode fazer a multiplicação entre as duas matrizes
{
printf("\nN%co %c poss%cvel multiplicar as matrizes A * B!\nInsira novos valores\n", 198, 130, 161);
fprintf(ficheiro_out, "\n\nNão é possível multiplicar as matrizes A * B!\nInsira novos valores\n");
}
printf("\n\n\n");
fprintf(ficheiro_out, "\n\n\n");
if (ColunaA == LinhaB);
printf("\n%c poss%cvel multiplicar as matrizes A * B!\n", 144, 161);
fprintf(ficheiro_out, "\nÉ possível multiplicar as matrizes A * B!\n");
fprintf(ficheiro_out, "\n");
break;
}
}
解决方案
您的break
语句显然将程序控制发送到最后一个if
else
块之外。
改为使用} else if {
并完全删除break
语句。
推荐阅读
- powershell - 对 csv 文件进行排序并删除指定给列的旧行
- java - Spring Context 是否具有等效于 Java CDI 的 @Inject @Any
- facebook - Facebook:如何在应用审核期间请求 instagram_basic 权限?
- sql - 我应该使用数组还是将单独的值存储在单独的列中?
- mod-security - ModSecurity 在哪里存储被阻止的 IP 地址列表?
- python - python,读取文件名的特定字符
- database - 如何使用codeigniter中的getRecored_row方法从数据库中获取另一列值 - 任何人都可以帮助我
- java - 从 java 中的 System.nanoTime() 计算小时
- c# - 时间:2019-05-10 标签:c#covariance with Interface and BindingList
- php - 异常:StreamIO /var/www/html/vendor/php-amqplib/php-amqplib/PhpAmqpLib/Wire/IO/StreamIO.php 252 中检测到太多读取尝试