我一开始的for循环终止条件是i <= 3 ,但是只能输出前两个值,改成 i <= 5 就过了。
错误代码如下
#include <stdio.h>
int main()
{
int a , b , c , x , y , z , sum ;
char ch ;
scanf ( "%d %d %d" , &x , &y , &z ) ;
sum = x + y + z ;
a = x ;
if ( a > y )
{
a = y ;
}
if ( a > z )
{
a = z ;
}
c = x ;
if ( c < y )
{
c = y ;
}
if ( c < z )
{
c = z ;
}
b = sum - a - c ;
for ( int i = 1 ; i <= 3 ; i++ )
{
scanf ( "%c" , &ch ) ;
if ( ch == 'A' )
{
printf ("%d ",a);
}
if ( ch == 'B' )
{
printf ("%d ",b);
}
if ( ch == 'C' )
{
printf ("%d ",c);
}
}
return 0 ;
}
后来我换成C++,for循环中输入语句改为cin >> ch ,
但是AC解的i的终止条件为i <= 3。为什么使用这两个函数时AC的i的终止条件不同啊?
求原因,谢谢!