首页 > 解决方案 > 面对“预期的';' 在'cout'之前“C ++中的错误

问题描述

我是 C++ 新手(我的第二天),我是 Java 的初学者。所以我试着写一个代码来检查一个数字是否是回文。(如果数字的反面是数字本身,则数字是回文,例如:343、555、6776 等。)所以在我的在线编译器上,我编写了以下代码:

#include <iostream>
using std::cout;
using std::cin;
using std::endl;
void reverse(int);
int pow(int,int);
int main()
{
    cout<<"Enter the number:"<<endl;
    int n;
    cin>>n;
    reverse(n);
}
void reverse(int n)
{
    int up=1,u=0;
    for (int i=n;i>0;i=i/10)
    {
        int d=i%10;
        u=(pow(10,up)*d)+u
        cout << "d=" << d << "\tu=" << u << endl;
    }
    
}
int pow(int b, int e)
{
    int result=1;
    for (int i=1;i<=e;i++)
    {
        result=result*b;
    }
    return result;
}

在上面的代码中,函数 reverse 反转数字,pow 只是一个基本的幂函数,返回类型为 int。我的反向函数有一些问题,所以要检查我尝试使用 cout 打印循环的两个值(反向是 int 返回类型,但要检查我声明它为 void 并在主函数中调用它)并且出现此错误

source_file.cpp: In function ‘void reverse(int)’:
source_file.cpp:27:9: error: expected ‘;’ before ‘cout’
         cout << "d=" << d << "\tu=" << u << endl;
         ^~~~

请帮助......

标签: c++

解决方案


;在作业结束时缺少 a u

这有效:

u=(pow(10,up)*d)+u;


推荐阅读