C printf仅用于打印;1537“;而不是整数的值

C printf仅用于打印;1537“;而不是整数的值,c,printf,C,Printf,我刚刚在学习编程,所以这似乎是一个令人厌烦的问题。但当我试图打印一个整数的值时,它会打印“1537”。这里是函数,请随意查看 void compare(void) { int num1; int num2; int num3; int num4; int smallest; printf("Please enter four integers:\n"); scanf("%d %d %d %d", &num1, &num2, &num3, &num4); num

我刚刚在学习编程,所以这似乎是一个令人厌烦的问题。但当我试图打印一个整数的值时,它会打印“1537”。这里是函数,请随意查看

void compare(void) {
int num1;
int num2;
int num3;
int num4;
int smallest;

printf("Please enter four integers:\n");
scanf("%d %d %d %d", &num1, &num2, &num3, &num4);

num1 = smallest;
if (num2 < smallest)
    num2 = smallest;
if (num3 < smallest)
    num3 = smallest;
if (num4 < smallest)
    num4 = smallest;

printf("%d is the smallest\n", smallest);

}
void比较(void){
int num1;
int num2;
int num3;
int num4;
int最小;
printf(“请输入四个整数:\n”);
scanf(“%d%d%d%d”、&num1、&num2、&num3、&num4);
num1=最小值;
如果(num2<最小值)
num2=最小值;
如果(num3<最小值)
num3=最小值;
如果(num4<最小值)
num4=最小值;
printf(“%d是最小的\n”,最小的);
}

您需要将值分配给
最小的
,而不是从中分配

换成

smallest=num1;
if (num2 < smallest)
    smallest= num2;
if (num3 < smallest)
    smallest=num3;
if (num4 < smallest)
    smallest=num4;
最小值=num1;
如果(num2<最小值)
最小值=num2;
如果(num3<最小值)
最小值=num3;
如果(num4<最小值)
最小=num4;

~有时很难抓住最小的错误~:)

您需要将值分配给
最小的
,而不是分配给它

换成

smallest=num1;
if (num2 < smallest)
    smallest= num2;
if (num3 < smallest)
    smallest=num3;
if (num4 < smallest)
    smallest=num4;
最小值=num1;
如果(num2<最小值)
最小值=num2;
如果(num3<最小值)
最小值=num3;
如果(num4<最小值)
最小=num4;

~z~有时很难抓住最小的错误~:)

你不需要初始化最小的错误。实际上,您根本不需要在任何地方对它进行写入。

您不需要初始化它。实际上,你根本不写它。< /P>赋值在C(和C++和java、perl和python和php和……)中的其他工作,在C(和C++和java、perl和python和php……)中的另一种方法是工作的:<代码>最小< /代码>错误' Eh?<代码>最小< /代码>错误'嗯?