想了挺久的,scanf读取不完全的问题,所以使用return的时候要注意是否会对下一次循环有影响,return 和break等同效果在这。
题目:如输入1 2 3 4
5 6 7 8
求输出的 数组里4个元素是多少
#include<iostream>
using namespace std;
int flag=1;
int test(int v[4]){
for(int i=0;i<4;i++){
scanf("%d",&v[i]);
if(i==2&&flag==1) {
flag=0;
return 0;
}
}
return 1;
}
int main(){
int v[4]={0};
int n=2;
while(n--){
test(v);
}
for(int i=0;i<4;i++){
printf("%d ",v[i]);
}
return 0;
}