starry369 2022-01-20 16:33 采纳率: 100%
浏览 33
已结题

判断奇数个数c语言。

这个为什么输出一直为0

img

  • 写回答

3条回答 默认 最新

  • 关注

    有好几处错误,代码修改如下

    #include <stdio.h>
    #include <malloc.h>
    
    int main()
    {
        int n,i,k;
        int *a;
        k=0;
        scanf("%d",&n);
        a = (int*)malloc(n*sizeof(int)); //给a申请空间,动态申请空间
        for (i=0;i<n;i++)
            scanf("%d",&a[i]);
        i=0; //这里重置i为0
        while(i<n) //这里为什么要用a[i] != -1呢,应该是用i<n遍历,如果用a[i] !=-1,如果数组中间有-1,循环直接就结束了
        {
            if(a[i]%2 != 0)
                k++;
            i++; //这里i自增
        }
        printf("%d",k);
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 1月28日
  • 已采纳回答 1月20日
  • 创建了问题 1月20日