考研机试OJ练习—%运算符
作者:互联网
1.还是A+B
题目描述
读入两个小于10000的正整数A和B,计算A+B。需要注意的是:如果A和B的末尾K(不超过8)位数字相同,请直接输出-1。
输入描述:
测试输入包含若干测试用例,每个测试用例占一行,格式为"A B K",相邻两数字有一个空格间隔。当A和B同时为0时输入结束,相应的结果不要输出。
输出描述:
对每个测试用例输出1行,即A+B的值或者是-1。
示例1
输入
复制
1 2 1
11 21 1
108 8 2
36 64 3
0 0 1
输出
复制
3
-1
-1
100
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
int main()
{
int a,b,k;
while(scanf("%d %d %d",&a,&b,&k)!=EOF&&(a!=0&&b!=0))
{
int flag=k;
int sum=a+b;
while(k--)
{
if(a%10==b%10)
{
flag--;
a/=10;
b/=10;
}
}
if(flag==0)
printf("-1\n");
else
printf("%d\n",sum);
}
return 0;
}
2.守形数
守形数是这样一种整数,它的平方的低位部分等于它本身。 比如25的平方是625,低位部分是25,因此25是一个守形数。
编一个程序,判断N是否为守形数。 输入描述: 输入包括1个整数N,2<=N<100。输出描述: 可能有多组测试数据,对于每组数据, 输出"Yes!”表示N是守形数。 输出"No!”表示N不是守形数。
示例1
输入 25 4
输出 Yes! No!
#include<stdio.h>
int main()
{
int N,n,i;
while(scanf("%d",&N)!=EOF)
{
n=N*N;
if(2<=N&&N<=9) i=10;
else i=100;
if((n-N)%i==0)
printf("Yes!\n");
else printf("No!\n");
}
return 0;
}
标签:输出,OJ,25,int,运算符,形数,机试,输入,10 来源: https://blog.csdn.net/qq_39293290/article/details/88075116