十进制转二进制,多组数据输入,按格式输出,但是这个程序不报错也不运行

十进制转二进制,多组数据输入,按格式输出,但是这个程序不报错也不运行

img

#include <iostream>
using namespace std;
int main()
{    int a[100],n, m,i;
    while ((scanf_s("%d", &m)) != EOF);
    {
        n = m;
        if (m < 0)n = 0-m;
        for (i = 0; n != 0; i++)
        {
            a[i] = n % 2;
            n /= 2;

        }
        cout << m << "-->";
        if (m < 0)cout << "-";
        for (i--; i >= 0; i--)
        {
            cout << a[i];
        }
        cout <<"1"<< endl;
    }
}

while语句后面分号删掉!!!