案例分析:
都满足条件的情况下,输出的结果只是第一个条件的判断结果
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char const *argv[])
{
int i, a[6] = {1,2,3,4,5,6};
int j, b[6] = {11,12,13,14,15,16};
int c,c1,c2;
for ( i = 0; i < 6; i++)
{
if (a[i] <12)
{
// c1 = a[i];
c = a[i];
}
esle if (b[i] < 12)
{
// c2 = b[i];
c = b[i];
}
}
printf("c====%d\n", c);
// printf("c1====%d\n", c1);
// printf("c2====%d\n", c2);
system("pause");
return 0;
}
如果单独的条件if结果还是和上面的一样;
如果各自判断则有:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char const *argv[])
{
int i, a[6] = {1,2,3,4,5,6};
int j, b[6] = {11,12,13,14,15,16};
int c,c1,c2;
for ( i = 0; i < 6; i++)
{
if (a[i] <12)
{
c1 = a[i];
// c = a[i];
}
if (b[i] < 12)
{
c2 = b[i];
// c = b[i];
}
}
// printf("c====%d\n", c);
printf("c1====%d\n", c1);
printf("c2====%d\n", c2);
system("pause");
return 0;
}
执行结果: