题一
在10万以内的一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
#include <stdio.h>
#include <math.h>
int main()
{
int num = 0;
while (num < 100000)
{
if (pow((int)sqrt(num + 100), 2) == num + 100 && pow((int)sqrt(num + 168), 2) == num + 168)/判断是不是该数。
{
printf("%d是此数\n", num);
return 0;
}
num++;
}
return 0;
}
进while循环后,判断该数是否符合标准。符合标准则打印并返回。
题二
给出一个32位的有符号整数,将这个整数中每位上的数字进行反转。
#include <stdio.h>
int main()
{
int num = 0;
int t = 0;
char flag = '+';
printf("请输入一个32位有符号整数:");
scanf("%d", &num);
while (num != 0)
{
if (num < 0)
{
flag = '-';
num = -num;
}
t = t * 10 + num % 10;
num = num / 10;
}
printf("%c%d\n", flag, t);
return 0;
}
获取输入后,若输入为负,则将输入加绝对值后进行反转,最后通过flag增加符号。