- 给定样例个数T(while(T–))
scanf("%d", &T);
while(T--)
{
}
- 输入n……当n=0时,结束
scanf("%d", &n);
while(n != 0)
{
scanf("%d", &n);
}
- 测试存在多组测试样例(while……EOF)End Of File
while(scanf("%d", &n) != EOF)
{
}
//可以按<ctrl + Z>组合键,这是会显示一个^Z,按键就可以结束while了
- 什么条件都没给
while(cin>>a>>b){
//没数据了之后,cin就会返回false
}
while(scanf("%d%d", &a, &b) == 2){
//输入正常的话,scanf读入几项,返回值是几
}
- 读入字符串
while(scanf("%s", str) != EOF)
{
}
while(gets(str) != NULL)
{
}
- 满足某个条件是退出while……break
while(scanf("%d%d", &a, &b) != EOF)
{
if(a == 0 && b == 0)//当a、b都为零时结束输入
break;
}
如果是浮点数都为0是结束条件,就直接等于0,不用考虑ESP(1e-6)
或者直接计数,4个为0时就结束。
正常输出
while(scanf("%d%d", &a, &b) != EOF)
{
if(a == 0 && b == 0)//当a、b都为零时结束输入
break;
printf("%d\n", a + b);
}
- 每组数据输出之后就额外增加一个空行
while(scanf("%d%d", &a, &b) != EOF)
{
if(a == 0 && b == 0)//当a、b都为零时结束输入
break;
printf("%d\n", a + b);
printf("\n");
}
- 每组输出数据之间有一个空行,最后一组数据后面没有空行
while(T --)
{
scanf("%d", &n);
for(int i = 0; i < n; i ++)
{
scanf("%d", &a);
}
printf("%d\n", sum);
if(T > 0)
printf("\n");
}
- 输出一行N个整数,每两个整数之间用空格隔开,最后一个整数后面不允许加上空格
for(int i = 0; i < N; i ++)
{
printf("%d", a[i]);
if(i < N - 1)
printf(" ");
else
printf("\n");
}