数组-接口4-参数为一个整型数组和数组长度的整数,再加一个整数;预期结果是一个整型数组

忘是亡心i 2023-10-03 00:01 25阅读 0赞

测试接口的代码说明

适用接口:参数为一个整型数组和数组长度的整数,再加一个整数;预期结果是一个整型数组

测试接口的具体代码如下:

注意红色字体,用后续小节中的接口进行替换,进行开发测试。

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. // 待添加的接口
  4. int main(void)
  5. {
  6. // ------------测试用例数据,需要根据实际测试用例进行内容替换{-------
  7. // ---- 适用接口:参数为一个整型数组和数组长度的整数,再加一个整数;预期结果是一个整型数组 ---------------
  8. // 第一维度:用例个数
  9. int nums[][100] = { { 2,7,11,15 } ,{ 3,2,4 }, { 3,3}};
  10. // 元素个数 = 用例个数;数组内容是nums[]中每个数组的实际长度
  11. int numsSize[] = { 4, 3, 2};
  12. // 第二个参数:元素个数 = 用例个数
  13. int kNum[] = { 9, 6, 6 };
  14. // 每个用例的预期结果
  15. // 预期结果:第一维度,用例个数
  16. int res[][100] = { { 0,1 } ,{ 1,2 }, { 0,1 }};
  17. int resSize[] = { 2,2,2 };
  18. // -----------------------}测试用例数据结束-------------------------
  19. int flag_res = 0; // 统计测试用例通过与否的个数
  20. int temp = 0; // 暂存每次调用接口处理后的结果
  21. for (int i = 0; i < sizeof(numsSize) / sizeof(int); i++) { // 循环测试
  22. int* fp;
  23. int returnSize;
  24. int resTemp[100]; // 暂存每次调用接口处理后的结果
  25. fp = resTemp;
  26. // 需要根据实际给出的接口进行接口替换
  27. fp = twoSum(nums[i], numsSize[i], kNum[i], &returnSize); // 调用测试用例,返回实际计算结果。
  28. temp = 0;
  29. for (int j = 0; j < returnSize; j++)
  30. {
  31. if (fp[j] != res[i][j])
  32. {
  33. temp = 1;
  34. break;
  35. }
  36. }
  37. // 检查单个用例实际结果是否符合预期,不符合预期则将结果输出
  38. if (temp < 1)
  39. {
  40. flag_res++; // 实际结果与预期一致时增加统计数
  41. }
  42. else
  43. {
  44. flag_res--;
  45. printf("\n第 %d 个(序号从0开始)测试用例实际结果与预期不一致!\n", i);
  46. printf("实际结果是:\n");
  47. for (int j = 0; j < returnSize; j++)
  48. {
  49. printf("%d\t", fp[j]);
  50. }
  51. printf("\n预期结果是:\n");
  52. for (int j = 0; j < resSize[i]; j++)
  53. {
  54. printf("%d\t", res[i][j]);
  55. }
  56. }
  57. }
  58. // 检查总用例实际结果是否都符合预期,输出结论
  59. if (flag_res < (int)(sizeof(resSize) / sizeof(int)))
  60. {
  61. printf("\n测试用例部分通过!\n");
  62. }
  63. else
  64. {
  65. printf("\n测试用例全部通过!\n");
  66. }
  67. return 0;
  68. }

不同颜色字体标出的重点

#include

#include

// 待添加的接口

int main(void)

{

// ——————测试用例数据,需要根据实际测试用例进行内容替换**{———-

// —— 适用接口:参数为一个整型数组和数组长度的整数,再加一个整数;预期结果是一个整型数组 ———————-

// 第一维度:用例个数

int nums[][100] = { { 2,7,11,15 } ,{ 3,2,4 }, { 3,3}};

// 元素个数 = 用例个数;数组内容是nums[]中每个数组的实际长度

int numsSize[] = { 4, 3, 2};

// 第二个参数:元素个数 = 用例个数

int kNum[] = { 9, 6, 6 };

// 每个用例的预期结果

// 预期结果:第一维度,用例个数

int res[][100] = { { 0,1 } ,{ 1,2 }, { 0,1 }};

int resSize[] = { 2,2,2 };

// ———————————-}**测试用例数据结束————————————-

int flag_res = 0; // 统计测试用例通过与否的个数

int temp = 0; // 暂存每次调用接口处理后的结果

for (int i = 0; i < sizeof(numsSize) / sizeof(int); i++) { // 循环测试

int\ fp;*

int returnSize;

int resTemp[100]; // 暂存每次调用接口处理后的结果

fp = resTemp;

// 需要根据实际给出的接口进行接口替换

fp = twoSum(nums[i], numsSize[i], kNum[i], &returnSize); // 调用测试用例,返回实际计算结果。

temp = 0;

for (int j = 0; j < returnSize; j++)

{

if (fp[j] != res[i][j])

{

temp = 1;

break;

}

}

// 检查单个用例实际结果是否符合预期,不符合预期则将结果输出

if (temp < 1)

{

flag_res++; // 实际结果与预期一致时增加统计数

}

else

{

flag_res—;

printf(“\n**第 %d 个(序号从0开始)测试用例实际结果与预期不一致!\n”, i);

printf(“**实际结果是:\n”);

for (int j = 0; j < returnSize; j++)

{

printf(“%d\t”, fp[j]);

}

printf(“\n**预期结果是:\n”);

for (int j = 0; j < resSize[i]; j++)

{

printf(“%d\t”, res[i][j]);

}

}

}

// 检查总用例实际结果是否都符合预期,输出结论

if (flag_res < (int)(sizeof(resSize) / sizeof(int)))

{

printf(“\n**测试用例部分通过!\n”);

}

else

{

printf(“\n**测试用例全部通过!\n”);

}

return 0;

}

发表评论

表情:
评论列表 (有 0 条评论,25人围观)

还没有评论,来说两句吧...

相关阅读