输入10个数后输出最大值,无论输入什么输出都是1

做题时敲的代码:

#include<stdio.h>
int main()
{
    int num[10],i,max=num[0];
    for(i=0;i<10;i++)   
        scanf("%d",&num[i]);
    for(i=0;i<10;i++);
        max=num[i]>max? num[i]:max;
    printf("Max=%d",max);
    return 0;
}

初衷是用数组放置10个数后通过比较找出最大值后输出,但结果一直是1
图片说明
求解答。

for(i=0;i<10;i++);     <-多了个分号吧
    max=num[i]>max? num[i]:max;
    而且像这样的定义 int num[10],i,max=num[0]; 也不太规范,num都没有初始化
for(i=0;i<10;i++);
        max=num[i]>max? num[i]:max;

仔细看这个 for 循环,
for(i=0;i<10;i++) 后面多了一个分号