回复 5楼 自学的数学
以下是引用自学的数学在2018-1-10 11:05:49的发言:
这是你修改后的代码。现在是最正确的了。谢谢!让我学到了很多东西,再次谢谢!!
最正确的,我自己看自己出bug都笑了,就是这组数据比较特别所以看不出问题~
突然发现上面我那个逻辑上有bug,就作为一个反面教材~
这个才是正解
~
程序代码:
#include <stdio.h>
#include<limits.h>
#define SIZE(s) sizeof(s)/sizeof(*s)
int main( void )
{
const int a[]= {2,1,4,3,6,5,8,7,10,9};
int max=INT_MIN;
size_t i=0;
for (i=0; i!=SIZE(a); ++i)
a[i]>max&&printf(" %-4d",max=a[i]);
puts("");
return 0;
}
再补充一个好玩的来看看
~
程序代码:
#include <stdio.h>
#include<limits.h>
#define SIZE(s) sizeof(s)/sizeof(*s)
int main( void )
{
const int a[]= {2,1,4,3,6,5,8,7,10,9,13,15,10};
int max=INT_MIN;
size_t i=0;
#define __MAX(a,b) ((a)>(b)?(a):(b))
for (i=0; i!=SIZE(a); ++i)
printf("\0%-4d"+(a[i]>max),max=__MAX(max,a[i]));
puts("");
#undef __MAX
return 0;
}
[此贴子已经被作者于2018-1-10 19:57编辑过]