gpt4 book ai didi

c - C 中模数错误的修复方法是什么

转载 作者:行者123 更新时间:2023-11-30 18:38:29 25 4
gpt4 key购买 nike

我想就此事寻求帮助。我要输入两个整数。除“模量”外,所有结果均已显示。第二个和第三个“%d”也保持原样。这是我运行程序时的结果。

Enter First Number: 10
Enter Second Number: 20

10 + 20 = 30
10 - 20 = -10
10 * 20 = 200
10 / 20 = 0
10 % %d = %d

如果这是我的程序,可能的修复是什么:

#include <stdio.h>
#include <conio.h>
main()
{

int num1, num2, sum=0, diff=0, prod=0, quot=0, mod=0;

clrscr();

printf("\nEnter First Number:");
scanf("%d",&num1);
printf("\nEnter Second Number:");
scanf("%d",&num2);
sum = num1 + num2;
diff = num1 - num2;
prod = num1 * num2;
quot = num1 / num2;
mod = num1 % num2;
printf("%d + %d = %d", num1, num2, sum);
printf("%d - %d = %d", num1, num2, diff);
printf("%d * %d = %d", num1, num2, prod);
printf("%d / %d = %d", num1, num2, quot);
printf("%d % %d = %d", num1, num2, mod);
getch();

}

最佳答案

问题出在这里:

printf("%d % %d = %d", num1, num2, mod);
~~~~

当您在格式字符串中使用 % 时,printf 会将其视为转换规范的一部分(如 %d)。如果后面跟随的不是有效规范,则结果是未定义的,因此任何情况都可能发生。

如果您需要在输出中使用文字 %,请在格式字符串中使用 %%:

printf("%d %% %d = %d", num1, num2, mod);

关于c - C 中模数错误的修复方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33824660/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com