gpt4 book ai didi

c - (C) 在 printf 行显示多个变量,有一些问题

转载 作者:太空宇宙 更新时间:2023-11-04 06:32:52 24 4
gpt4 key购买 nike

我在中途测试一个程序,发现 printf 将我存储的一些值显示为 0。特别是当我尝试使用 printf 在一个命令中显示它们时。他们单独工作得很好,我已经检查过了。这是我的代码:


#include <math.h>
#include <stdio.h>
#include <stdlib.h>

/* Initialization of variables */
double int1;
double int2;
double int3;
double int4;
double int5;

/* Initialization of calculated values */
double a_mean;
double g_mean;
double h_mean;
double st_dev;
n = 5; /* Total number of integers for summation use */

int main()
{
printf("Enter 5 integers, pressing 'Enter' after each:\n"); /* Prompts user input */

/* Scans in entered integer values (5) */
scanf("%d", &int1);
scanf("%d", &int2);
scanf("%d", &int3);
scanf("%d", &int4);
scanf("%d", &int5);

/* Calculations */

/* Output */
printf("The five integers entered were:\n");
printf("%d, %d, %d, %d, and %d", int1, int2, int3, int4, int5);

return 0;
}

命令提示符输入:

输入 5 个整数,每个整数后按“Enter”键:1个2个3个4个5


命令提示输出:

输入的五个整数是:1、0、2、0 和 3


顺便忽略中间缺失的/* Calculations */部分,我只是在测试我目前的进度...但是看看我是如何输入 1、2、3、4、5 并且只有一些值打印正确的?他们在单独的 printf 行上工作。我做错了什么??

最佳答案

尽管您将这些变量命名为 int1 等,但它们的类型是 double!因此,要么将它们声明为 int,要么如果您选择使用 double:

改变

scanf("%d", &int1);

scanf("%lf", &int1);

并给他们更好的名字。

关于c - (C) 在 printf 行显示多个变量,有一些问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18731202/

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