1.计算a-b;
注:t<10000,0<b<a<2^64
Input
第 1 行输入一个 t , 表示 t 组数据
第 2 到 t+1 行输入 a,b 中间用空格分开
Output
输出a−b 的值并换行
Sample Input
5 2 1 12 1 1 1 8 2 100000 40000
Sample Output
1 11 0 6 60000
这题主要是让大家意识到数据范围的重要性,常用用数据类型的数据范围如下:
类型名称 : 取值范围:
int -2^31 ~ 2^31-1
long int 或 long 4 -2^31 ~ 2^31-1
long long int 或 long long 8 -2^63 ~ 2^63-1
#include<stdio.h>
int main()
{
int t;
scanf("%d", &t);
while(t--)
{
unsigned long long a, b;
scanf("%llu %llu", &a, &b);
printf("%llu\n",a - b);
}
return 0;
}
2. 某年某月某日,小撒,非池两人约好玩击剑游戏,由 shine 学长负责给他们统计分数,总共有 t 次游戏,每次两人每次获得的分数分别为 num1,num2 ,分数高的获胜,现在青山学长想知道他们离获胜分别差多少分。
保证:0 ≤num1,num2 ≤10^
5
Input
第 1 行输入一个整数 t, 表示 t 组数据;
第 2 至 t−1 行分别输入两个数 num1,num2
Output
每行输出两个数, 分别表示小撒,非池需要加的分数, 末行换行
Sample Input
2 1 2 2 3
Sample Output
2 0 2 0
include <stdio.h>
int main()
{
int t; scanf("%d", &t);
while(t --)
{
int num1, num2; scanf("%d%d", &num1, &num2);
if(num1 == num2) printf("1 1\n");
else if(num1 > num2) printf("0 %d\n", num1 - num2 + 1);
else printf("%d 0\n", num2 - num1 + 1);
}
return 0;
}
3. 两个数的简单计算器 (10 分)
本题要求编写一个简单计算器程序,可根据输入的运算符,对2个整数进行加、减、乘、除或求余运算。题目保证输入和输出均不超过整型范围。
输入格式:
输入在一行中依次输入操作数1、运算符、操作数2,其间以1个空格分隔。操作数的数据类型为整型,且保证除法和求余的分母非零。
输出格式:
当运算符为+
、-
、*
、/
、%
时,在一行输出相应的运算结果。若输入是非法符号(即除了加、减、乘、除和求余五种运算符以外的其他符号)则输出ERROR
。
输入样例1:
-7 / 2
结尾无空行
输出样例1:
-3
结尾无空行
输入样例2:
3 & 6
输出样例2:
ERROR
#include<stdio.h>
int main()
{
int x,y;
char operator;
scanf("%d %c %d",&x,&operator,&y);
switch(operator)
{
case '+': printf("%d",x+y);break;
case '-': printf("%d",x-y);break;
case '*': printf("%d",x*y);break;
case '/': printf("%d",x/y);break;
case '%': printf("%d",x%y);break;
default:printf("ERROR");break;
}
return 0;
}