#include<stdio.h>
int main()
{
int a[100],c=0,i,j,max;
printf("请输入整数:\n");
for(i=0;;i++)
{
scanf("%d",&c);
if(c<0)break;
a[i]=c;
}
for(j=0;j<i-1;j++)
{
if(a[i]<a[i+1])
max=a[i+1];
}
printf("你输入的整数中最大的数为:%d\n",max);
return 0;
}
这个输出的答案为什么是-858993460
题目要求是输入若干整数,当输入值小于0时,停止输入,输出其中最大的数
答案:5 悬赏:70 手机版
解决时间 2021-02-22 15:28
- 提问者网友:箛茗
- 2021-02-22 04:09
最佳答案
- 五星知识达人网友:旧脸谱
- 2021-02-22 04:40
for(j=0;j<i-1;j++)
{
if(a[i]<a[i+1])
max=a[i+1];
}
变量写错了哦!
大括号里的i改成j
{
if(a[i]<a[i+1])
max=a[i+1];
}
变量写错了哦!
大括号里的i改成j
全部回答
- 1楼网友:神的生死簿
- 2021-02-22 10:04
int main()
{
int i=0,j=0,n;
printf("please input .......\n"); //提示输入开始
while(1) //循环开始
{
scanf("%d",&n); //每循环一次输入一个数字
if(n>0)
i++; //如果数字大于0,i加1
else if(n<0)
j++; //如果数字小于0,j加1
else
break; //输入0跳出循环
}
printf("i=%d\nj=%d\n",i,j);
return 0;
}
scanf("%d",&n)不是重复,因为循环一次只能输入一个数字。
i和j分别是记录大于0和小余0的个数
- 2楼网友:一秋
- 2021-02-22 08:33
max没有初始化
- 3楼网友:冷風如刀
- 2021-02-22 07:01
1. max没有初始化。
2. for(j=0;j<i-1;j++)
{
if(a[i]<a[i+1]) => if(a[j]<a[j+1])
max=a[i+1]; => max=a[j+1];
}
- 4楼网友:想偏头吻你
- 2021-02-22 05:41
for(j=0;j<i-1;j++)
{
if(a[i]<a[i+1])
max=a[i+1];
}
里面用j,即
for(j=0;j<i-1;j++)
{
if(a[j]<a[j+1])
max=a[j+1];
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯