求助:只用while和if语句,怎么求十个数中的最大和次大?

来源:百度知道 编辑:UC知道 时间:2024/06/21 02:16:38
以下是小弟编的,求大侠看看错在哪儿啊,谢谢了哈!
#include<stdio.h>

main()
{
int a,max,secmax,counter=1;

scanf("%d",&a);
a=max=secmax;

while(counter<10){
counter++;
if(a<max&&a<secmax){
max=a;
secmax=a;
}
else
continue;
}
printf("%d %d\n",max,secmax);

return 0;
}
感谢各位能帮小弟改过来!

#include<stdio.h>
int main(){
int a,max,secmax,counter=1;
scanf("%d",&a);
max=secmax=a;
while(counter++<10){
scanf("%d",&a);
if(a>max) {secmax=max;max=a;}
if(a!=max&&secmax<a) {secmax=a;}
}
printf("%d %d\n",max,secmax);
return 0;
}

你的程序问题很多,可以参照下面的程序,可以实现。
# include<stdio.h>

main()
{
int i,a,b[10],max,secmax;

for(i=0;i<10;i++)
{scanf("%d",&b[i]);}
max=secmax=b[0];
i=0;
while(i<10){
i++;
if(b[i]>max){
max=b[i];
}
else
continue;
}
i=0;
while(i<10){
i++;
if(b[i]>secmax&&b[i]<max){
secmax=b[i];
}
else
continue;
}

printf("%d %d\n",max,secmax);

return 0;
}


#include <stdio.h>
void main()
{
int a[10]={4,3,5,9,6,10,8,7,