练习总结
最大数练习
1.循环+scanf函数可以达到连续输入数据的目的
for(i=2;i<=n;i++) { scanf("%d",&a); if(a<min) { min=a; } if(a>max) { max=a; } }
2.
for(i=1;i<=n;i++)
图示表示循环n次
3.
printf("please a number:\n"); scanf("%d",&a); min=a; max=a; for(i=2;i<=n;i++)
如果之前有过输入一个数据,则之后计数器i的初始值变成i=2
4.计次序功能的实现
for(i=1;i<=n;i++) { scanf("%d",&a); if(a<min) { min=a; count_min=i;
注意:若将a<min改为a<=min,则优先后一个数;反之前一个数
拓展:找次大数
方法:通过增设变量,比较max变化前后的值,取变化前后值中较小的一个
终码
#include <stdio.h> #include <stdlib.h> int main() { int min,n,a,i,count_max,count_min,next,max1; int max; printf("please input n:\n"); scanf("%d",&n); printf("please a number:\n"); scanf("%d",&a); min=a; max=a; max1=a; next=a; count_max=1; count_min=1; for(i=2;i<=n;i++) { scanf("%d",&a); if(a<=min) { min=a; count_min=i; } if(a>=max) { max1=a; } if(max<max1) { next=max; } if(a>=max) { max=a; count_max=i; } } printf("min=%d number=%d\n",min,count_min); printf("max=%d number=%d\n",max,count_max); printf("next=%d",next); return 0; }