2013-09-26 44 views
-3

嗨,我有问题,C++商计划帮助我

#include <iostream> 
#include <cstdlib> 

using namespace std; 

int main(int argc, char *argv[]) 
{ 
    float a,b,wynik; 

    cout << "quotient" << endl 
     << "..." << endl << endl 
     << "quotient 2 numbers." 
     << "\ndivisior does not equal 0"<< endl << endl; 

    cout << "a="; 
    cin >> a; 

    cout << "b="; 
    cin >> b; 


    if (b!=0) 
     cout << "\n" << a << "/" << b << " = " << a/b << "\n\n"; 
    else 
    cout <<"\ndivisior does not equal 0!\n\n"; 

    system("PAUSE");  
    return 0; 
} 

我必须使用或同时,当有人通过0

+2

我不知道你的问题是什么。你能澄清吗? – cdhowie

+0

用'while'替换'if'并更正源代码。启用所有警告和调试信息(可能用'g ++ -Wall -g'编译)。学习使用调试器(也许是'gdb')。 –

+0

*“用'while替换'if'” - 当'b!= 0'时这不会创建一个无限循环吗? – cdhowie

回答

0

尽量商数量如果我理解正确的话,你可能要问的输入如果再b为零

你可以有这样的事情:

do { 

    cout << "quotient" << endl 
     << "..." << endl << endl 
     << "quotient 2 numbers." 
     << "\ndivisior does not equal 0"<< endl << endl; 

    cout << "a="; 
    cin >> a; 

    cout << "b="; 
    cin >> b; 

    if (b!=0) 
     cout << "\n" << a << "/" << b << " = " << a/b << "\n\n"; 
    else 
    cout <<"\ndivisior does not equal 0!\n\n"; 
}while(b==0); 
+0

是的,但它仍然无法正常工作.. http://scr.hu/1u1j/rp2c5 –

+0

@KamilBest然后可能会做错看到[这里](http://ideone.com/HS5iLR) – P0W

+0

非常感谢你多:) –

0

你的T erms是错误的,请参阅Wikipedia definition of "quotient"

#include <iostream> 

int main(void) 
{ 
    char prompt[] = 
     "\n" 
     "Division, dividend/divisor = quotient:\n" 
     " Enter divisior: "; 
    int divisior; 
    int dividend; 
    while (true) 
    { 
     std::cout << prompt; 
     std::cin >> divisor; 
     if (divisor == 0) 
     { 
      std::cout << "\n* Divisor is zero, try again.\n"; 
      continue; 
     } 
     std::cout << "\n Enter dividend: "; 
     std::cin >> dividend; 
     std::cout << "\nResult of " 
        << dividend 
        << "/" 
        << divisor 
        << " is, using integer division, " 
        << dividend/divisor 
        << "\n"; 
     break; 
    } 
    return EXIT_SUCCESS; 
}