ACM和蓝桥杯比赛7种常用的多组输入输出(c语言)
编者按:以下7道题为ACM和蓝桥杯比赛中常用的多组输入输出的情况,题目很简单,这里相当于做一个总结,若读者有其他情况或者办法,可留言一起交流。
第1道:
#include<stdio.h>
int main()
{
int a,b;
while(scanf("%d%d",&a,&b)==2)
{
printf("%d
",a+b);
}
return 0;
}
//备注:
//scanf是有返回值的,返回值是成功接收的对象个数
第2道:
#include<stdio.h>
int main()
{
int n;
int a,b;
scanf("%d",&n);
while(n--)
{
scanf("%d%d",&a,&b);
printf("%d
",a+b);
}
return 0;
}
//备注:
//这里是先规定输入的组数n,再接收n组输入
第3道:
#include<stdio.h>
int main()
{
int a,b;
while(scanf("%d%d",&a,&b)==2)
{
if(a==0&&b==0)
{
break;
}
printf("%d
",a+b);
}
return 0;
}
//备注:
//这里是遇到规定的数据时候就表示接收结束
//这里规定遇到两个0时候就结束接收
第4道:
#include<stdio.h>
int main()
{
int n;
int sum=0;
int temp;
while(scanf("%d",&n)==1)
{
if (n==0)
break;
sum=0;
while(n--)
{
scanf("%d",&temp);
sum=sum+temp;
}
printf("%d
",sum);
}
return 0;
}
//备注:
//这里是接收多组数据 ,每组数据有多多少个不固定,以第一个数据为准。
//遇到规定的数据,结束接收
第5道:
#include<stdio.h>
int main()
{
int n;
int sum=0;
int m;
int temp;
scanf("%d",&n);
while(n--)
{
sum=0;
scanf("%d",&m);
while(m--)
{
scanf("%d",&temp);
sum=sum+temp;
}
printf("%d
",sum);
}
return 0;
}
//备注:
//这里先接收一个数据的组数
//每一组的第一个数代表本组数据的个数
第6道:
#include<stdio.h>
int main()
{
int m;
int sum;
int temp;
while(scanf("%d",&m)==1)
{
sum=0;
while(m--)
{
scanf("%d",&temp);
sum=sum+temp;
}
printf("%d
",sum);
}
return 0;
}
//备注:
//一直接收输入
第7道:
#include<stdio.h>
int main()
{
int a,b;
while(scanf("%d%d",&a,&b)==2)
{
printf("%d
",a+b);
printf("
");
}
return 0;
}
//备注:
//一直接收输入,计算两数字和
下一篇:
为什么要学习算法和数据结构?
