逆序的三位数
题目内容:
程序每次读入一个正三位数,然后输出逆序的数字。注意,当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。
提示:对一个三位数数x,做x%10可以得到它的个位数,做x/100可以得到它的百位数,十位数则通过/和%两个运算的结合可以得到。
输入格式:
你的程序每次读到一个3位的正整数。
输出格式:
输出逆序的数。
输入样例:
163
输出样例:
361
时间限制:500ms内存限制:32000kb
##代码
#include <stdio.h>
int main()
{
int x,a,b,c;
scanf("%d",&x);
if(x <100 || x > 999)
{
printf("您输入的值不是三位数\n");
}
else
{
//提示:对一个三位数数x,做x%10可以得到它的个位数,做x/100可以得到它的百位数,十位数则通过/和%两个运算的结合可以得到。
a=x/100; // 取出百位数
b=x/10%10; // 得到十位数
c=x%10;//取出个位数
x=c*100+b*10+a;
printf("%d",x);
}
return 0;
}
#时间换算
题目内容:
UTC是世界协调时,BJT是北京时间,UTC时间相当于BJT减去8。现在,你的程序要读入一个整数,表示BJT的时和分。整数的个位和十位表示分,百位和千位表示小时。如果小时小于10,则没有千位部分;如果小时是0,则没有百位部分;如果小时不是0而分小于10分,需要保留十位上的0;如果小时是0而分小于10分的,则不需要保留十位上的0。如1124表示11点24分,而905表示9点5分,36表示0点36分,7表示0点7分。
有效的输入范围是0到2359,即你的程序不可能从测试服务器读到0到2359以外的输入数据。
你的程序要输出这个时间对应的UTC时间,输出的格式和输入的相同,即输出一个整数,表示UTC的时和分。整数的个位和十位表示分,百位和千位表示小时。如果小时小于10,则没有千位部分;如果小时是0,则没有百位部分;如果小时不是0而分小于10分,需要保留十位上的0;如果小时是0而分小于10分的,则不需要保留十位上的0。
提醒:要小心跨日的换算。
输入格式:
一个整数,表示BJT的时和分。整数的个位和十位表示分,百位和千位表示小时。如果小时小于10,则没有千位部分;如果小时是0,则没有百位部分;如果小时不是0而分小于10分,需要保留十位上的0;如果小时是0而分小于10分的,则不需要保留十位上的0。
输出格式:
一个整数,表示UTC的时和分。整数的个位和十位表示分,百位和千位表示小时。如果小时小于10,则没有千位部分;如果小时是0,则没有百位部分;如果小时不是0而分小于10分,需要保留十位上的0;如果小时是0而分小于10分的,则不需要保留十位上的0。
输入样例:
803
输出样例:
3
时间限制:500ms内存限制:32000kb
代码
#include <stdio.h>
int main()
{
int date;
scanf("%d",&date);
if ((date>0)&&(date<2400))
{
int hour=date/100;
int min=date%100;
hour=hour-8;
if (hour<0)
{
hour=hour+24;
}
printf("%d",hour*100+min);
return 0;
}
else
{
printf(" 值应在0~2359之间\n");
}
}
奇偶个数
题目内容:
你的程序要读入一系列正整数数据,输入-1表示输入结束,-1本身不是输入的数据。程序输出读到的数据中的奇数和偶数的个数。
输入格式:
一系列正整数,整数的范围是(0,100000)。如果输入-1则表示输入结束。
输出格式:
两个整数,第一个整数表示读入数据中的奇数的个数,第二个整数表示读入数据中的偶数的个数。两个整数之间以空格分隔。
输入样例:
9 3 4 2 5 7 -1
输出样例:
4 2
时间限制:500ms内存限制:32000kb