求教一道C语言题 10

输入一组整数,输出除了最大值之外的其他所有整数之和。注意:输入的数据个数未知,最大值也可能有多个。假设输入的最后一个数据为0表示输入结束。不允许使用数组。没财富值了谢谢... 输入一组整数,输出除了最大值之外的其他所有整数之和。注意:输入的数据个数未知,最大值也可能有多个。假设输入的最后一个数据为0表示输入结束。不允许使用数组。没财富值了 谢谢 展开
 我来答
White_MouseYBZ
2013-03-04 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6290万
展开全部
#include "stdio.h"//
void main(void){
int n,max=0,sum=0,x=0;
printf("Type integers...\n");
while(1){
scanf("%d",&n);
if(!n) break;
else if(n>max){
(sum+=max)+=x;
max=n;
x=0;
}
else if(n<max)
sum+=n;
else x+=n;
}
printf("%d\n",sum);
}
zhou2214
2013-03-03 · TA获得超过706个赞
知道小有建树答主
回答量:495
采纳率:0%
帮助的人:503万
展开全部
int result=0,max=-9999, times=0;
int temp;
while(scanf("%d",&temp),temp)
{
result+=temp;
if(temp>max)
{max=temp;times=0;}
else if(temp==max)
{times++;}
else continue;
}
result-=max*times;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cpucash
2013-03-04 · TA获得超过1584个赞
知道小有建树答主
回答量:1457
采纳率:66%
帮助的人:951万
展开全部
这个思路很简单,定义几个变量
int max=0; //存储最大值
int sum=0;//存储和
int x;
while(1)
{
scanf("%d",&x);
if(max<x)
max=x;

if(x==0)
break;
sum+=x;

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式