计算可以被给定数字整除的数字的程序

时间:2017-06-28 02:52:20

标签: c visual-studio-2013

概述:给定2个整数(num1,num2),写一个函数,返回num1..num2之间可被num1整除的数字计数。         例如:计数(3,15)返回5(3,6,9,12,15)。         注意:您需要考虑包含范围 INPUTS:两个数字num1,num2。         num1,num2> = 0。

输出:返回可被num1整除的num1..num2之间的数字计数。

错误情况:在错误情况下返回-1。 这是我的代码:

int count(int num1, int num2) {
     int temp;

    int i, j,k;

    i = num1;
    j = num2;
    temp = 0;
    for (k = 1; k <= j;k++)
    {
        if (k%i == 0)
            temp++;


    }

    return temp;

}

在visual studio中运行测试用例时,只传递一个测试,而另一个测试未通过测试。 我强调的部分是失败的测试。 (countzero testcase)

enter image description here 以下是我尝试在工具中运行时引发的错误。 enter image description here 请帮帮我

1 个答案:

答案 0 :(得分:1)

你几乎就在那里。以下是所询问内容的伪代码,与您的函数进行比较,添加缺少的部分,它应该通过测试而没有任何问题。

function(num1,num2),返回计数

  • 检查输入是否在规定的范围内:num1&lt; = num2? num1,num2&gt; = 0?
    • 如果没有,请返回-1
  • 我们将使用%,检查输入以避免被零除
    • 如果num1 == 0,则返回-1
  • 重置计数
  • 循环(i = num1; i&lt; = num2; ++ i)
  • if i%num1 == 0,(如果已涵盖所有错误案例,则应该是安全的)
    • ++计数
  • 结束循环
  • 返回计数。