从键盘上输入一组数据,找出这组数据中的最大数与最小数,将最大数与最小数位置互换,并将互换后的数据再次输出。
首先从键盘接收一组数据然后找到最大值和最小值这个是比较简单的。
ok,上代码:
#include<stdio.h>void main(){int a[10],max,min,i;printf("请输入10个数:\n");for(i=0;i<10;i++)//这里是循环输入scanf("%d",&a[i]);max=a[0];min=a[0];for(i=1;i<10;i++)//进行循环比较{if (max<a[i])max=a[i];if (min>a[i])min=a[i];}printf("\n最大值为:%d",max);printf("\n最小值为:%d\n",min);}
交换两个数,直接max=min是不可取的,所以要添加一个中间变量‘ t ’,然后有三个变量就可以进行交换了,
t = max;//注意开头是新定义的变量max=min;min = t;//上一行的结尾要是下一行的开头
ok了。看一下完整代码:
#include<stdio.h>void main(){int a[10],max,min,i,t;printf("请输入10个数:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);max=a[0];min=a[0];for(i=1;i<10;i++){if (max<a[i])max=a[i];if (min>a[i])min=a[i];}printf("\n最大值为:%d",max);printf("\n最小值为:%d\n",min);{t=max;max=min;min=t;printf("\n交换后的最大值为:%d",max);printf("\n交换后的最小值为:%d\n",min);}}
vc++:
结果:
这个还是比较简单的。