C语言,输入多组数据,每行两个,然后对应每行一个输出结果

2024-12-02 17:43:58
推荐回答(4个)
回答1:

#include
int main()
{
char buf[100000]={0};//最终输出缓冲
char buf0[10];//中间结果缓存
int a=1,b=1,c;//初始条件不是全0就可以
while(a||b)
{
scanf("%d%d",&a,&b);//读取两个整数,存于变量a和b中
fflush(stdin);//清空键盘输入缓冲区 保证一行最多取两个数 多余的或其它非数字的被忽略
sprintf(buf0,"%d\n",a+b);//输出a+b结果加回车号\n 存到串buf0
if(a||b)//结束的最后一项不输出
strcat(buf,buf0);//追加到最终输出缓冲中
}
printf("\n%s",buf);//输出最终结果
}
//全是C语言的,加了全部注释 输入 0 0结束输入,调试运行结果如下:
1 2
3 4
100 200
50 200
0 0

3
7
300
250
//如果满意请采纳

回答2:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Test
{
class Program
{
static void Main(string[] args)
{
Console.Write("请输入需要计算数量");
int num=int.Parse(Console.ReadLine());
int[] numA = new int[num];//创建数组A
int[] numB = new int[num];//创建数组B
for (int i = 0; i < num; i++)
{
Console.Write("请输入A{0}:",i+1);
numA[i]=int.Parse(Console.ReadLine());
Console.Write("请输入B{0}:", i + 1);
numB[i] = int.Parse(Console.ReadLine());
}
Console.WriteLine("输出结果");
for (int i = 0; i < num; i++)
{
Console.WriteLine(numA[i]+numB[i]);
}
}
}
}
C#语言
不是道是不是LZ的意思,EOF是什么表示不知道

回答3:

因为不知道什么时候结束,所以要用EOF来确定
#include
#include
#include "string.h"

int main()
{
int a,b;
while(scanf("%d%d",&a,&b)!=EOF)
{
printf("%d\n",a+b);
}
return 0;
}

回答4:

EOF = end of file 文件尾的意思