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;
}
//备注:
//一直接收输入,计算两数字和
				       
			          下一篇:
			            为什么要学习算法和数据结构? 
			          
			        
