如果不知道有多少组数据要测试呢?
追答你的题目是 输入一个正整数T,
scanf("%d",&T);
T 就是组数,数据总数为 T*2
因为你说你刚入门,所以数组声明为定态大数组。否则,可以动态分配:
int *a;
a = (int *) malloc(sizeof(int) * T * 2);
for (j=0;j<2*T;j++) scanf("%d",&a[j]); 读入 数据。
===============
如果 不知道有多少组数据要测试
那么要有约定,怎样算数据输入结束。例如 输入 -999 表示结束,例如 输入 EOF 表示结束。
根据约定,进行判断,是否输入结束。
i=0;
while(1){
if (scanf("%d",&a[i])==EOF) break;
// 或者 if (a[i]== -999) break;
i++;
}
因为你说你刚入门,否则这里 可以 每读一个数 用 realloc 增加动态数组大小 -- 更 花里胡哨 地编程序。