错误Assert失败表达式:_format_parser.error_code()== 0

kmbjn2e3  于 2023-10-16  发布在  其他
关注(0)|答案(1)|浏览(432)
  1. #include <stdio.h>
  2. int main()
  3. {
  4. int a, n;
  5. float p;
  6. printf("Please enter article characteristics.\n");
  7. printf("Article Number: ");
  8. scanf_s("%d", &a);
  9. printf("Number of pieces: ");
  10. scanf_s("%d", &n);
  11. printf("Price per piece: ");
  12. scanf_s("%.1f", &p);
  13. printf("\n\tArticle Number\tQuantity\tPrice Per Piece\n");
  14. printf("\t %d\t\t%d\t %.1f Dollar", a, n, p);
  15. return 0;
  16. }

当我运行代码时,我能够输入第一部分,但一旦我输入第二部分,我就会得到错误。即使我删除了第二部分,当我输入第一个输入时,我也会得到错误。

y1aodyip

y1aodyip1#

用户输入可能因人而异,因此最好使用scanf(“%f”,&p)而不是scanf(“%.1f”,&p),但在显示值或执行其他操作时,您可以根据需要更改小数点后一位(.1f)或两位(.2f)。下面是正确的代码:

  1. #include <stdio.h>
  2. int main()
  3. {
  4. int a, n;
  5. float p;
  6. printf("Please enter article characteristics.\n");
  7. printf("Article Number: ");
  8. scanf("%d", &a);
  9. printf("Number of pieces: ");
  10. scanf("%d", &n);
  11. printf("Price per piece: ");
  12. scanf("%f", &p);
  13. printf("\n\tArticle Number\tQuantity\tPrice Per Piece\n");
  14. printf("\t %d\t\t%d\t %.1f Dollar", a, n, p);
  15. return 0;
  16. }

您可以在

下面查看示例输出

展开查看全部

相关问题