时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)
提交数 : 19949 | 通过数 : 6419
给定一个正整数n,试编程输出n以内能被5和7整除的数。(不包括n)
输入一个正整数n。
输出n以内能被5和7整除的数。
100
35 70
每个数据后面都输出一个空格。
NBU OJ
代码:
#include //C语言
int main(){
int n,i;
scanf("%d",&n);
for(i=1;i
时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)
提交数 : 20401 | 通过数 : 10771
写一程序判断某一年是否是闰年。
输入一个整数表示年份
判断该年份是否为闰年,如果不是就输出no ,是就输出yes
2000
yes
判断闰年的条件是:能被4整除但不能被100整除,或者能被400整除。
NBU OJ
代码:
#include //C语言
int main(){
int n;
scanf("%d",&n);
if(n%4==0&&n%100!=0||n%400==0) printf("yes\n");
else printf("no\n");
return 0;
}
时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)
提交数 : 18055 | 通过数 : 8214
CoCo和Tom是一对好拍档,他们两个经常相互比赛记忆能力。今天他们的比赛项目就是模拟万年历,即任何一方随意报出一个年份和月份,另一方需要快速报出这个月份有多少天。Mary做裁判,捧了一本万年历在旁边拼命翻,看他们回答的是否正确。假如CoCo报的是2020年的2月,那么Tom需要快速回答29才算是正确的。(小提示,这里面其实最麻烦的是闰年问题,其他都好解决的拉)
从键盘输入两个整数表示年和月的数值。如2020 2表示2020年的2月份。假设输入数据都是有效的。
输出该月的天数。
2020 2
29
NBU OJ
代码:
#include //C 法1
int main(){
int y,m;
int mon[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
scanf("%d%d",&y,&m);
if(y%4==0&&y%100!=0||y%400==0) mon[2]=29;
else mon[2]=28;
printf("%d\n",mon[m]);
return 0;
}
#include //C语言 法2
int main(){
int n,m,d=0;
scanf("%d%d",&n,&m);
if(m==1||m==3||m==5||m==7||m==8||m==10||m==12) d=31;
else if(m==2){
if(n%4==0&&n%100!=0||n%400==0) d=29;
else d=28;
}
else d=30;
printf("%d\n",d);
return 0;
}
时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)
提交数 : 14409 | 通过数 : 5498
小时候老盼着长大,长大后又盼着自己不要老的太快:)。讲虚岁什么的太伤感情了,还是来算算实际年龄吧。先输入某人的生日(年:y0,月:m0,日:d0),再输入当前的日期(年:y1,月:m1,日:d1),请计算该人的实足年龄。
输入6个整型数据,用空格隔开,依次代表y0、m0、d0、y1、m1、d1的值。(假设y0<=y1。具体格式见样例)
输出该人的实足年龄。(计算规则见样例)
2015 1 2 2016 1 2
1
NBU OJ
代码:
#include //C语言
int main(){
int y0,m0,d0,y1,m1,d1;
scanf("%d%d%d%d%d%d",&y0,&m0,&d0,&y1,&m1,&d1);
if(m1
时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)
提交数 : 13658 | 通过数 : 6248
输入年份和这一年的第几天,输出具体的年、月、日的信息。(注意闰年的判断!)
输入两个整数分别代表年份和这一年的第几天。(假设数据都在有效范围内)
输出对应的年、月、日。输出的数字之间以一条横线间隔,输出完毕换行。
2011 20
2011-1-20
NBU OJ
代码:
说一下子,这个方法(法1)是搜出来的,思想挺不错的,放在下面当个人笔记记着了。
#include //C语言 法1
int main(){
int y,m,d,i,days,days1=0,days2=0;
int month[12]={31,28,31,30,31,30,31,31,30,31,30,31};
scanf("%d%d",&y,&days);
if(y%4==0&&y%100!=0||y%400==0) month[1]=29;
for(i=0;i<12;i++){
days1+=month[i];
if(i<=10) days2+=month[i]+month[i+1];
else if(i==11) days2+=month[i];
if(days1==days) m=i+1,d=month[i];
else if(days>days1&&days
法2是靠数数出来的,太过拙劣,这里就不写出来了。
时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)
提交数 : 10015 | 通过数 : 5958
输入整数a和b,若a的平方加上b的平方大于等于100,则输出a^2+b^2 百位以上的数字,否则输出a^2+b^2之和。
输入整数a和b。
输出对应结果。
10 0
1
NBU OJ
代码:
#include //C语言
int main(){
int a,b,y;
scanf("%d%d",&a,&b);
y=a*a+b*b;
if(y>=100) y/=100;
printf("%d\n",y);
return 0;
}
时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)
提交数 : 13628 | 通过数 : 5954
输入一个四位数,将其加密后输出。加密的规则如下:将该数每一位上的数字加9,然后除以10取余作为该位上的新数字,最后将千位和十位上的数字互换、百位和个位上的数字互换,组成加密后的新数字。高位若为0的也要输出。
输入一个四位数。(保证输入的是有效的四位数)
输出加密后的新数
1238
2701
NBU OJ
代码:
#include //C语言
int main(){
int x,g=0,s=0,b=0,q=0;
scanf("%d",&x);
g=(x%10+9)%10;
s=(x/10%10+9)%10;
b=(x/100%10+9)%10;
q=(x/1000+9)%10;
printf("%d%d%d%d\n",s,g,q,b);
return 0;
}
时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)
提交数 : 10039 | 通过数 : 5516
某加油站提供三种汽油和一种柴油,售价分别为:
90号汽油:5.14元/升
93号汽油:5.54元/升
97号汽油:5.90元/升
0号柴油:5.13元/升
另外,加油站还提供“自助加油”或“协助加油”两个服务等级,如果是自助加油则可以获得5%的优惠,如果是工作人员协助加油则只有2%的优惠。编程实现针对用户加油量、油的品种和服务类型,计算用户应付的金额。
输入三个数据,第一个浮点数表示加油量(升),第二个整数表示油品类型(如90、93、97、0),第三个整数(1表示自助加油,2表示协助加油)。假设输入数据都有效。
计算并输出用户应付的金额。保留2位小数。
50 93 2
271.46
NBU OJ
代码:
#include //C语言
int main(){
double a,F;
int b,c;
scanf("%lf%d%d",&a,&b,&c);
if(c==1) F=0.95*a;
else F=0.98*a;
if(b==90) a=5.14*F;
else if(b==93) a=5.54*F;
else if(b==97) a=5.9*F;
else a=5.13*F;
printf("%.2f\n",a);
}
时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)
提交数 : 12111 | 通过数 : 3192
股票真是让人又爱又恨。股票价格的涨跌趋势常用蜡烛图技术中的K线图来表示,分别为日K线、周K线、月K线等。以日K线为例,每天对应一根蜡烛小图,每天股票价格从开盘到收盘走完一天后,在一天对应的蜡烛图中,要表示4个价格:开盘价格Open(早上开盘买卖成交的第一笔价格)、收盘价格Close(下午收盘时最后一笔成交的价格)、全天的最高价High和最低价Low。如果收盘价格低于开盘价,表示为“实心蓝白蜡烛”;如果收盘价格高于开盘价,表示为“空心红蜡烛”;如果开盘价等于收盘价,则为“十字红蜡烛”。如果最低价格比开盘价和收盘价低,称为“有下影线”;如果最高价格比收盘价和开盘价高,称为“有上影线”。请设计程序,根据给定的4个价格组合,输出当日的蜡烛是怎么样的。
输入4个价格(开盘价格、最高价格、最低价格、收盘价格)
输出蜡烛图的两个特性:
(1)是否是实心蓝白蜡烛(solid blue and white candle)、或空心红蜡烛(hollow red candle)、或十字红蜡烛(cross red candle)
(2)是否有上影线(upper shadow)和(或)下影线(lower shadow)。无影线特性的就不用输出。
6.110 6.250 6.100 6.105
solid blue and white candle,upper shadow,lower shadow
注意:如果要输出upper shadow时前面加个逗号;如果要输出lower shadow时前面加个逗号。
《C语言程序设计经典实验案例集》
代码:
#include //C语言
int main(){
double o,h,l,c;
scanf("%lf%lf%lf%lf",&o,&h,&l,&c);
if(co) printf("hollow red candle");
else printf("cross red candle");
if(h>c&&h>o) printf(",upper shadow");
if(l
时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)
提交数 : 9866 | 通过数 : 5214
给定一个整数n,输出一个由字符“*”组成的边长为n的中空的正方形。
输入一个整数n
输出一个由字符“*”组成的边长为n的中空的正方形。
5
*****
* *
* *
* *
*****
NBU OJ
代码:
#include //C语言
int main(){
int n,i,j;
scanf("%d",&n);
for(i=0;i