为什么我一直得到“错误:在'案件'之前预期不合格的身份'”?

问题描述 投票:-1回答:1

我正在制作一个代码,用户可以使用switch语句决定他们想要看到哪种形状。我在前四个案件中做得很好但是当我到达第五个案件时我遇到了麻烦。我继续收到一条错误,说“错误:预期不合格 - 在'案件'之前”,每当我试图做第五个案件时我都无法弄清楚问题。

我的代码发生了什么?

    #include <iostream>
using namespace std;
int main() {
int choice;
cout << "Please enter the shape you would like to see" << endl;
cout << "1. Rectangle" << endl;
cout << "2. Square" << endl;
cout << "3. Right Triangle" << endl;
cout << "4. Isosceles Triangle" << endl;
cout << "5. Kite" << endl;
cout << "6. Quit" << endl;
cin >> choice;

switch(choice){
    case 1 : double length,width; //rectangle
             cout << "Enter the length and width of the rectangle" << endl;
             cin >> length >> width;
             for(int i = 0; i < length; i++){
             for(int j = 0; j < width; j++){
             cout << "*";
             }
             cout << "\n";
             }
    break;
    case 2 : cout << "Enter the length and width of the square" << endl; 
             //square
             cin >> length >> width;
             for(int i = 0; i < length; i++){
             for(int j = 0; j < width; j++){
             cout << " * ";
             }
             cout << "\n";
             }
    break;
    case 3 : cout << "Enter the length of the triangle" << endl;      
             //right triangle
             cin >> length;
             for(int i = 0; i < length; i++){
             for(int j = 0; j < i; j++){
             cout << "*";
             }
             cout << "\n";
             }
    break;
    case 4 : int star=1;
             for(int i=1;i<=5;i++){
             for(int j=4;j>=i;j--){
             cout<<" ";
             }
             for(int z=0;z<star;z++){
             cout<<"*";  
             }
             cout<<endl;   
             star=star+2;
             }
             }
             }
    case 5 : cout << "???";
c++ switch-statement
1个回答
1
投票

你的花括号不匹配。在}之前你有两个额外的case 5

这些括号应该追求case 5。一个用于switch声明,一个用于main函数。

另外,你在第一行的#include不应该有任何缩进。

© www.soinside.com 2019 - 2024. All rights reserved.