每日学习 1220--1229

1220 火车行李托运费

时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)

提交数 : 4204 | 通过数 : 2967

题目描述

 

假设乘坐火车托运行李时按下列式子收费:

   y= 0                  (0<=x<=20)

      y= (x-20)*2        (20<x<=40)

      y=(x-40)*5+40     (x>40)

式子中的x为行李的重量,y为应交的费用。请编写程序计算应交金额y(元)。

输入要求

 

输入行李的重量x(整数)。

输出要求

 

输出应交的金额。

输入样例

40

输出样例

40

提示

 

来源

NBU OJ

#include<stdio.h>     //C
int main(){
	int x,y=0;
	scanf("%d",&x);
	if(x<=20) y=0;
	if(x<=40) y=(x-20)*2;
	else y=(x-40)*5+40;
	printf("%d\n",y);
	return 0;   
}


1221 画等腰三角形

时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)

提交数 : 5008 | 通过数 : 2947

题目描述

 

在运用C语言开发程序时,有时为了程序运行界面的美观,需要在屏幕上用字符构成一些特殊的图案用以装饰。请设计一个C程序,在屏幕上打印一个由符号‘*’组成的等腰三角形。下图是n为5的一个等腰三角形。

输入要求

 

输入一个整数n。

输出要求

 

在屏幕上打印由*组成的层高为n的等腰三角形。每行都没有后缀的空格。

输入样例

5

输出样例

    *
   ***
  *****
 *******
*********

提示

 

来源

NBU OJ

#include<stdio.h>    //C   法1
int main(){
	int n,i,j,k;
	scanf("%d",&n); 
	for(i=1;i<=n;i++){		                     
		for(j=0;j<n-i;j++) printf(" ");
		for(k=0;k<2*i-1;k++) printf("*"); 
		printf("\n"); 
	}
	return 0;	
}

#include<stdio.h>       //C    法2
int main(){
	int n,i,j;
	scanf("%d",&n);
	for(i=0;i<n;i++){
		for(j=0;j<n-1-i;j++) printf(" ");
		for(j=0;j<2*i+1;j++) printf("*");
		printf("\n");
	}
	return 0;
}

 

#include<stdio.h>     //C    法3  
int main(){
	int n,i,j,k;
	i=j=k=1;
	scanf("%d",&n);
	for(k=1;k<=n;k++){
		for(i=k;i<=n-1;i++) printf(" ");
		for(j=1;j<=2*k-1;j++) printf("*");
		printf("\n");
	}
	return 0;
}


1222 表示成两个数的平方和

时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)

提交数 : 10005 | 通过数 : 5194

题目描述

 

输入一个正整数N,找出所有满足X^2+Y^2=N的正整数对X和Y。

输入要求

 

输入一个正整数N。

输出要求

 

输出这两个正整数X和Y,满足X^2+Y^2=N,输出时要求X<=Y。如果无解则不需要输出任何信息。

输入样例

50

输出样例

1 7
5 5

提示

当有多组输出时,按照X从小到大的顺序排列。

来源

NBU OJ
#include<stdio.h>    //C
#include<math.h>
int main(){
	int n,i,j;
	scanf("%d",&n);
	for(i=1;i<=sqrt(n/2);i++){
		for(j=i;j<=sqrt(n-1);j++){
			if(i*i+j*j==n) printf("%d %d\n",i,j);
		}
	}
	return 0;
} 


1224 哥德巴赫猜想(2)

时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)

提交数 : 3679 | 通过数 : 1424

题目描述

 

所谓哥德巴赫猜想,就是指任何一个大于2的偶数,都可以写成两个素数的和。现在输入一个偶数,要求寻找两个素数,使其和等于该偶数。由于可能有多组素数对满足条件,所以本题要求输出两数差最小的那两个素数。

输入要求

输入一个偶整数M,M大于2。

输出要求

 

对于每个偶数,输出两个彼此最接近的素数,并且其和等于该偶数。(输出时两个素数小的在前,大的在后)。

输入样例

20 

输出样例

7 13

提示

 

来源

NBU OJ
#include<stdio.h>        //C
#include<math.h>
int su(int x){//判断素数
    int i;
    for(i=2;i<=sqrt(x);i++){
        if(x%i==0) return 0;
    }
    return 1;
}
int main(){
    int n,i;
    scanf("%d",&n);
    for(i=n/2;i>=1;i--){
        if(su(i)&&su(n-i)){
            printf("%d %d\n",i,n-i);
            break;
        }
    }
    return 0;
} 


1225 计算献血量

时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)

提交数 : 4804 | 通过数 : 2950

题目描述

志愿者献血:根据献血者性别和体重判断合适的献血量。对于男性,体重70公斤(含)以上,献血250ml,70公斤以下200ml。对于女性,体重60公斤(含)以上,献血180ml,60公斤以下150ml。请根据输入的体重和性别,输出合适的献血量。

输入要求

 

输入一个整数代表体重,一个字母代表性别。其中用大写字母M代表男性,大写字母F代表女性。小写字母无效。

输出要求

输出合适的献血量(单位默认为ml)

输入样例

80M   

输出样例

250

提示

 

 单组输入、单组输出。 

注意:输入时,字符和数字之间不需要空格

来源

NBU OJ
#include<stdio.h>        //C
int main(){
	int a,y=180;
	char s;
	scanf("%d%c",&a,&s);
	if(s=='M'){
		if(a<70) y=200;
		else y=250;
	} 
	else{if(a<60) y=150;}
	printf("%d\n",y);
	return 0;
}


1226 绘制字符正方形(简易版)

时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)

提交数 : 5191 | 通过数 : 3245

题目描述

 

绘制字符正方形,输入正方形边长n和一个填充字符,绘制出一个正方形图案。

输入要求

 

输入正方形边长n和填充字符(填充字符不会出现数字)。如,输入 4*, 表示需要输出4行4列的由符号*组成的图案。

输出要求

 

输出由填充字符组成的边长为n的正方形

输入样例

4*

输出样例

****
****
****
****

提示

 

来源

NBU OJ
#include<stdio.h>       //C 
int main(){
	int n,i,j;
	char a;
	scanf("%d%c",&n,&a);
	for(i=0;i<n;i++){
		for(j=0;j<n;j++) printf("%c",a);
		printf("\n");
	}
	return 0;
}


1227 数字和为5的整数

时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)

提交数 : 3504 | 通过数 : 2597

题目描述

 

求三位数[k1,k2]之间所有数字之和为5的整数。

输入要求

 

输入两个正整数k1和k2,k1和k2都是三位数。K2>K1。

输出要求

 

求[k1,k2]之间所有数字之和为5的整数。输出所有符合条件的数,每个数占1行。

输入样例

100 200

输出样例

104
113
122
131
140

提示

 

来源

NBU OJ
#include<stdio.h>         //C
int main(){
    int k1,k2,i,a,b,c;
    scanf("%d%d",&k1,&k2);
    for(i=k1;i<=k2;i++){
        a=i/100;
        b=i/10%10;
        c=i%10;
        if(a+b+c==5) printf("%d\n",i);
    }
    return 0;
}


1228 三天打鱼两天晒网(1)

时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)

提交数 : 6714 | 通过数 : 3160

题目描述

 

中国有句俗语叫“三天打鱼两天晒网”。某人从2011年1月1日开始“三天打鱼两天晒网”,问题:输入2011年的任一日期,判断此人在打鱼(fishing)还是在晒网(sleeping)。

输入要求

 

输入两个正整数a和b,表示2011年的a月b日。如输入9 5表示2011年的9月5日。(假设输入数据都是合法的)

输出要求

 

如在打鱼,则输出fishing,如在晒网,则输出sleeping。

输入样例

9 5

输出样例

fishing

提示

 

来源

NBU OJ
#include<stdio.h>      //C
int main(){
	int m,d,i,s=0;
	int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
	scanf("%d%d",&m,&d);
	for(i=1;i<m;i++) s+=a[i];
	s+=d;
	if(s%5<=3&&s%5) printf("fishing\n");
	else printf("sleeping\n");//if(s%5==0||s%5==4)
	return 0;
}


1229 奇数的平方

时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)

提交数 : 4062 | 通过数 : 1765

题目描述

打印自然数[1,n]中奇数的平方。

输入要求

输入一个正整数n。

输出要求

打印自然数[1,n]中奇数的平方。每行输出10个数据。

输入样例

40

输出样例

1 9 25 49 81 121 169 225 289 361 
441 529 625 729 841 961 1089 1225 1369 1521 

提示

每个数据后面都跟一个空格作为间隔符。

来源

NBU OJ
#include<stdio.h>         //C
int main(){
	int n,i,j,d=0;
	scanf("%d",&n);
	for(i=1;i<=n;i+=2){
			printf("%d ",i*i),d++;
			if(d%10==0) printf("\n");
	}
	return 0;
}


 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值