C语言:大家看下这个简单程序,为什么觉得剩下一句没有错误但是运行就不成呢?

#include<stdio.h>intmain(){inta[5],i,*max,*min;printf("请输入数组元素:\n");for(i=0;i<5;i++)s... #include<stdio.h>
int main()
{
int a[5],i,*max,*min;
printf("请输入数组元素:\n");
for(i=0;i<5;i++)
scanf("%d",&a[i]);
max=&a[0];
min=&a[0];
for(i=1;i<5;i++)
if(*max<a[i])
{max=&a[i];}
for(i=1;i<5;i++)---------------------->为什么省略这个循环,在一个for语句下实现
if(*min>a[i]) max,min指针移动,运行时后面的*min错误?
{min=&a[i];}
printf("5个数的最大数为%d,最小数为%d\n",*max,*min);
return 0;
}
展开
 我来答
廖北伯
2012-07-26 · TA获得超过526个赞
知道小有建树答主
回答量:375
采纳率:66%
帮助的人:290万
展开全部
for之後只管一道statement. 若包含许多道就要加{}.

想合并

for(i=1;i<5;i++) if(*max<a[i]) {max=&a[i];}
for(i=1;i<5;i++) if(*min>a[i]) {min=&a[i];}
就写
for(i=1;i<5;i++) {
if(*max<a[i]) {max=&a[i];}
if(*min>a[i]) {min=&a[i];}
}
百度网友e96ae71ed
2012-07-26 · TA获得超过728个赞
知道小有建树答主
回答量:1548
采纳率:0%
帮助的人:724万
展开全部
你这两个可以放一个循环里
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
meiwenhuadeNo
2012-07-26 · 贡献了超过116个回答
知道答主
回答量:116
采纳率:0%
帮助的人:27.6万
展开全部
你*min可能会指向a[5]这个地址存在吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2012-07-26
展开全部
你*min可能会指向a[5]这个地址存在吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hwy_2000
2012-07-26 · TA获得超过170个赞
知道小有建树答主
回答量:152
采纳率:100%
帮助的人:87.2万
展开全部
程序没有错误,如果把max,min放在一个for循环中,你要用个大括号括起来啊。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
天云老祖
2012-07-26 · TA获得超过729个赞
知道答主
回答量:100
采纳率:33%
帮助的人:19.2万
展开全部
for(i=1;i<5;i++)
{
if(*max<a[i])
{
max=&a[i];
}
if(*min>a[i])
{
min=&a[i];
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式