sk4pzz 2021-11-24 22:06 采纳率: 80%
浏览 101
已结题

为什么c语言float型变量输出一直是0.00

代码如下

#include <stdio.h>

struct bitches {
    char id[6];
    char name[11];
    int grades;
};

main() {
    int n, i, j;
    float average, sum;
    scanf("%d", &n);
    struct bitches information[n];
    for (i = 0; i < n; i++) {
        scanf("%s%s%d", &information[i].id, &information[i].name, &information[i].grades);
        sum = sum + information[i].grades;
    }
    average = sum / (float)  n;
    printf("%.2f\n", &average);

  • 写回答

1条回答 默认 最新

  • 涣兮若冰之将释 2021-11-24 22:18
    关注

    1、定义结构体指针时并没有分配存储空间,所以要用malloc()申请空间。
    2、变量sum没有初始化,你要求平均,先要将他初始化为0。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月2日
  • 已采纳回答 11月24日
  • 创建了问题 11月24日