喝饮料不咬吸管 2023-01-05 16:02 采纳率: 88.2%
浏览 16
已结题

求最大值和下标(为什么可以不初始化)


#include<stdio.h>
int main()
{
    int i,a[3],s=0,m;
    for(i=0;i<3;i++)
    {scanf("%d",&a[i]);
    m=0;if(a[i]>a[m])m=i;
    }printf("%d %d",a[m],m);
    return 0;
}

为什么可以不初始化,让a[3]={0}.什么情况下数组可以不初始化?有些情况下必须要初始化呢?

  • 写回答

4条回答 默认 最新

  • ShowMeAI 2023-01-05 16:10
    关注

    在 C 语言中,数组并不一定要在声明时就初始化。在这个程序中,你可以声明数组 a 如下:

    int a[3];
    

    这样 a 就没有被初始化,它的值是未定义的。你可以通过手动输入每个元素的值来赋值,也可以通过程序来修改每个元素的值。


    • 虽然在这个程序中,你可以不初始化数组 a,但是在某些情况下,你必须要初始化数组。例如,如果你想要将一个数组传递给一个函数,你必须要先初始化这个数组。
    • 在某些情况下,初始化数组可以使程序更易于阅读和理解。例如,如果你的程序中有一个数组,它用于存储某些固定的值,那么你可能希望在声明时就初始化这个数组,以便更容易地看出它所存储的值是什么。

    总之,在 C 语言中,数组并不一定要在声明时就初始化,但是在某些情况下,初始化可以让程序更易于阅读和理解,并且在某些情况下,初始化是必须的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

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

悬赏问题

  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 51单片机中C语言怎么做到下面类似的功能的函数(相关搜索:c语言)
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
  • ¥500 52810做蓝牙接受端
  • ¥15 基于PLC的三轴机械手程序
  • ¥15 多址通信方式的抗噪声性能和系统容量对比
  • ¥15 winform的chart曲线生成时有凸起