c语言 :给定两个数a,b(a<=b),求a+(a+1)+(a+2)+...b 输入 第一行是数据组数T(t<=100)

输入

第一行是数据组数T(T<=100)接下来T行每行两个整数(0<=a<=b<=1000)

输出

每组数据输出一行,包含一个表示结果的整数

样例输入

2
1 3
2 2

样例输出

6
2

//刚写的code,测试通过,如果有疑问,欢迎交流
#include<stdio.h>
int main(){
int T, a, b, cur_sum,i;
scanf("%d", &T);
while(T>0){
scanf("%d %d", &a, &b);
cur_sum = 0;
for(i = a; i<=b; i++){
cur_sum+=i;
}
T--;
printf("%d\n", cur_sum);
}
return 0;
}

 

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-01-20
#include <stdio.h>

void main()
{
int a,b,T,i;
int res[100]={0};
scanf("%d", &T);
for( i=0;i<T;i++  )
{
scanf("%d %d", &a, &b);
do{
res[i] += a++;
}while( a <= b );
}
for( i=0;i<T;i++  )
printf("%d\n", res[i] );
}

本回答被提问者和网友采纳
第2个回答  2015-01-20
先预处理一个数组 a[i]表示从1加到i的值

求j到k的值就是 a[k]-a[j-1]