输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。十个数字对应的拼音如下:
0: ling
1: yi
2: er
3: san
4: si
5: wu
6: liu
7: qi
8: ba
9: jiu
输入格式:
输入在一行中给出一个整数,如:1234。
提示:整数包括负数、零和正数。
输出格式:
在一行中输出这个整数对应的拼音,每个数字的拼音之间用空格分开,行末没有最后的空格。如 yi er san si。
输入样例:
600
输出样例:
fu liu ling ling
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String[] date = {"ling", "yi", "er", "san", "si", "wu", "liu", "qi", "ba", "jiu"};
String str = input.next();
int i = 0;
if (str.charAt(i) == '-') {
System.out.print("fu ");
i++;
}
while (i < str.length()) {
int n = str.charAt(i)-'0';
System.out.print(date[n]);
i++;
if (i != str.length()) {
System.out.print(" ");
}
}
}
}
给定两个整数A和B,输出从A到B的所有整数以及这些数的和。
输入格式:
输入在一行中给出2个整数A和B,其中−100≤A≤B≤100,其间以空格分隔。
输出格式:
首先顺序输出从A到B的所有整数,每5个数字占一行,每个数字占5个字符宽度,向右对齐。最后在一行中按Sum = X的格式输出全部数字的和X。
输入样例:
-3 8
输出样例:
-3 -2 -1 0 1
2 3 4 5 6
7 8Sum = 30
#include
int main(){
int a,b,sum=0;
scanf("%d %d",&a,&b);
for(int i=a;i<=b;i++){
printf("%5d",i);
if((i-a+1)%5==0&&i!=b)
printf("\n");
sum+=i;
}
printf("\n");
printf("Sum = %d",sum);
return 0;
}
本题要求将输入的任意3个整数从小到大输出。
输入格式:
输入在一行中给出3个整数,其间以空格分隔。
输出格式:
在一行中将3个整数从小到大输出,其间以“->”相连。
输入样例:
4 2 8
输出样例:
2->4->8
import java.util.Scanner;
public class Main {
public static void main(String args[]) {
Scanner std=new Scanner(System.in);
int t;
int a=std.nextInt();
int b=std.nextInt();
int c=std.nextInt();
if(a>b) {
if(a>c) {
if(b>c)System.out.print(c+"->"+b+"->"+a);
else System.out.print(b+"->"+c+"->"+a);
}
else System.out.print(b+"->"+a+"->"+c);
}
else {//a
if(b>c) {
if(a>c)System.out.print(c+"->"+a+"->"+b);
else System.out.print(a+"->"+c+"->"+b);
}
else System.out.print(a+"->"+b+"->"+c);
}
}
对于给定的正整数N,需要你计算 S=1!+2!+3!+…+N!。
输入格式:
输入在一行中给出一个不超过10的正整数N。
输出格式:
在一行中输出S的值。
输入样例:
3
输出样例:
9
#include
int main(){
int n,product,sum=0;
scanf("%d",&n);
if(n<=10){
for(int i = 1;i <= n;i++){
product=1;
for(int j = 1;j <= i;j++){
product *= j;
}
sum += product;
}
}
printf("%d",sum);
return 0;
}
微博上有个自称“大笨钟V”的家伙,每天敲钟催促码农们爱惜身体早点睡觉。不过由于笨钟自己作息也不是很规律,所以敲钟并不定时。一般敲钟的点数是根据敲钟时间而定的,如果正好在某个整点敲,那么“当”数就等于那个整点数;如果过了整点,就敲下一个整点数。另外,虽然一天有24小时,钟却是只在后半天敲1~12下。例如在23:00敲钟,就是“当当当当当当当当当当当”,而到了23:01就会是“当当当当当当当当当当当当”。在午夜00:00到中午12:00期间(端点时间包括在内),笨钟是不敲的。
下面就请你写个程序,根据当前时间替大笨钟敲钟。
输入格式:
输入第一行按照hh:mm的格式给出当前时间。其中hh是小时,在00到23之间;mm是分钟,在00到59之间。
输出格式:
根据当前时间替大笨钟敲钟,即在一行中输出相应数量个Dang。如果不是敲钟期,则输出:
Only hh:mm. Too early to Dang.
其中hh:mm是输入的时间。
输入样例1:
19:05
输出样例1:
DangDangDangDangDangDangDangDang
输入样例2:
07:05
输出样例2:
Only 07:05. Too early to Dang.
#include
int main() {
int hh, mm;
scanf("%2d:%2d", &hh, &mm);
if (hh >= 0 && hh < 12) printf("Only %02d:%02d. Too early to Dang.", hh, mm);
else if (hh == 12 && mm == 0) printf("Only 12:00. Too early to Dang.");
else {
for (int i = 0; i < hh - 12; i++) printf("Dang");
if (mm > 0) printf("Dang");
}
return 0;
}
给定N个正整数,请统计奇数和偶数各有多少个?
输入格式:
输入第一行给出一个正整N(≤1000);第2行给出N个非负整数,以空格分隔。
输出格式:
在一行中先后输出奇数的个数、偶数的个数。中间以1个空格分隔。
输入样例:
9
88 74 101 26 15 0 34 22 77
输出样例:
3 6
#include
int main(){
int n,num,cont_1=0,cont_2=0;
scanf("%d",&n);
for(int i = 0;i < n;i++){
scanf("%d",&num);
if(num%2) cont_1++;
else cont_2++;
}
printf("%d %d\n",cont_1,cont_2);
return 0;
}
本题的目标很简单,就是判断一个给定的正整数是否素数。
输入格式:
输入在第一行给出一个正整数N(≤ 10),随后N行,每行给出一个小于2 的 31次方的需要判断的正整数。
输出格式:
对每个需要判断的正整数,如果它是素数,则在一行中输出Yes,否则输出No。
输入样例:
2
11
111
输出样例:
Yes
No
#include
#include
int main(){
int t,n,j,falt,num;
scanf("%d",&n);
for(int i= 0;i<n;i++){
scanf("%d",&num);
falt =0;
if(num ==1) falt=1;
else{
t=sqrt(num);
for(j = 2;j<=t;j++){
if(num%j==0) falt=1;
}
}
if(falt) printf("No\n");
else printf("Yes\n");
}
return 0;
}
据说一个人的标准体重应该是其身高(单位:厘米)减去100、再乘以0.9所得到的公斤数。真实体重与标准体重误差在10%以内都是完美身材(即 | 真实体重 − 标准体重 | < 标准体重×10%)。已知市斤是公斤的两倍。现给定一群人的身高和实际体重,请你告诉他们是否太胖或太瘦了。
输入格式:
输入第一行给出一个正整数N(≤ 20)。随后N行,每行给出两个整数,分别是一个人的身高H(120 < H <
200;单位:厘米)和真实体重W(50 < W ≤ 300;单位:市斤),其间以空格分隔。
输出格式:
为每个人输出一行结论:如果是完美身材,输出You are wan mei!;如果太胖了,输出You are tai pang
le!;否则输出You are tai shou le!。
输入样例:
3
169 136
150 81
178 155
输出样例:
You are wan mei!
You are tai shou le!
You are tai pang le!
#include int main(){
int n,H,W;
scanf("%d",&n);
for(int i = 0;i<n;i++){
scanf("%d %d",&H,&W);
if(0.9<W/((H-100)*0.9*2)&&W/((H-100)*0.9*2)<1.1) printf("You are wan mei!\n");
else if(0.9>=W/((H-100)*0.9*2)) printf("You are tai shou le!\n");
else printf("You are tai pang le!\n");
}
return 0; }
真的是简单题哈 —— 给定两个绝对值不超过100的整数A和B,要求你按照“A/B=商”的格式输出结果。
输入格式:
输入在第一行给出两个整数A和B(−100≤A,B≤100),数字间以空格分隔。
输出格式:
在一行中输出结果:如果分母是正数,则输出“A/B=商”;如果分母是负数,则要用括号把分母括起来输出;如果分母为零,则输出的商应为Error。输出的商应保留小数点后2位。
输入样例1:
-1 2
输出样例1:
-1/2=-0.50
输入样例2:
1 -3
输出样例2:
1/(-3)=-0.33
输入样例3:
5 0
输出样例3:
5/0=Error
#include
int main(){
int a,b;
scanf("%d %d",&a,&b);
if(b==0) printf("%d/%d=Error",a,b);
else if(b<0) printf("%d/(%d)=%.2f",a,b,(float)a/b);
else printf("%d/%d=%.2f",a,b,(float)a/b);
return 0;
}
专家通过多组情侣研究数据发现,最佳的情侣身高差遵循着一个公式:(女方的身高)×1.09 =(男方的身高)。如果符合,你俩的身高差不管是牵手、拥抱、接吻,都是最和谐的差度。
下面就请你写个程序,为任意一位用户计算他/她的情侣的最佳身高。
输入格式:
输入第一行给出正整数N(≤10),为前来查询的用户数。随后N行,每行按照“性别
身高”的格式给出前来查询的用户的性别和身高,其中“性别”为“F”表示女性、“M”表示男性;“身高”为区间 [1.0, 3.0] 之间的实数。
输出格式:
对每一个查询,在一行中为该用户计算出其情侣的最佳身高,保留小数点后2位。
输入样例:
2
M 1.75
F 1.8
输出样例:
1.61
1.96
#include
int main(){
char s;
float h;
int n;
scanf("%d",&n);
getchar();
for(int i = 0;i<n;i++){
scanf("%c %f",&s,&h);
getchar();
if(s=='M') printf("%.2f\n",h/1.09);
if(s=='F') printf("%.2f\n",h*1.09);
}
return 0;
}
对方不想和你说话,并向你扔了一串数…… 而你必须从这一串数字中找到“250”这个高大上的感人数字。
输入格式:
输入在一行中给出不知道多少个绝对值不超过1000的整数,其中保证至少存在一个“250”。
输出格式:
在一行中输出第一次出现的“250”是对方扔过来的第几个数字(计数从1开始)。题目保证输出的数字在整型范围内。
输入样例:
888 666 123 -233 250 13 250 -222
输出样例:
5
#include
int main(){
int num , n=0;
while(1){
scanf("%d",&num);
n++;
if(num==250) break;
}
printf("%d",n);
}
你永远叫不醒一个装睡的人 —— 但是通过分析一个人的呼吸频率和脉搏,你可以发现谁在装睡!医生告诉我们,正常人睡眠时的呼吸频率是每分钟15-20次,脉搏是每分钟50-70次。下面给定一系列人的呼吸频率与脉搏,请你找出他们中间有可能在装睡的人,即至少一项指标不在正常范围内的人。
输入格式:
输入在第一行给出一个正整数N(≤10)。随后N行,每行给出一个人的名字(仅由英文字母组成的、长度不超过3个字符的串)、其呼吸频率和脉搏(均为不超过100的正整数)。
输出格式:
按照输入顺序检查每个人,如果其至少一项指标不在正常范围内,则输出其名字,每个名字占一行。
输入样例:
4
Amy 15 70
Tom 14 60
Joe 18 50
Zoe 21 71
输出样例:
Tom
Zoe
#include
struct stc{
char name[10];
int breathe;
int pulse;
}students[100];
int main(){
int n;
scanf("%d",&n);
getchar();
for(int i = 0;i < n;i++){
scanf("%s %d %d",students[i].name,&students[i].breathe,&students[i].pulse);
if(!((15<=students[i].breathe&&students[i].breathe<=20)&&(students[i].pulse>=50&&students[i].pulse<=70)))
printf("%s\n",students[i].name);
}
return 0;
}
据说汪星人的智商能达到人类 4 岁儿童的水平,更有些聪明汪会做加法计算。比如你在地上放两堆小球,分别有 1 只球和 2 只球,聪明汪就会用“汪!汪!汪!”表示 1 加 2 的结果是 3。
本题要求你为电子宠物汪做一个模拟程序,根据电子眼识别出的两堆小球的个数,计算出和,并且用汪星人的叫声给出答案。
输入格式:
输入在一行中给出两个 [1, 9] 区间内的正整数 A 和 B,用空格分隔。
输出格式:
在一行中输出 A + B 个Wang!。
输入样例:
2 1
输出样例:
Wang!Wang!Wang!
#include
struct stc{
int a;
int b;
}one;
int main(){
int sum = 0;
scanf("%d %d",&one.a,&one.b);
sum =one.a+one.b;
for(int i = 0; i < sum;i++)
printf("Wang!");
return 0;
}
某电视台的娱乐节目有个表演评审环节,每次安排两位艺人表演,他们的胜负由观众投票和 3 名评委投票两部分共同决定。规则为:如果一位艺人的观众票数高,且得到至少 1 名评委的认可,该艺人就胜出;或艺人的观众票数低,但得到全部评委的认可,也可以胜出。节目保证投票的观众人数为奇数,所以不存在平票的情况。本题就请你用程序判断谁是赢家。
输入格式:
输入第一行给出 2 个不超过 1000 的正整数 Pa 和 Pb,分别是艺人 a 和艺人 b
得到的观众票数。题目保证这两个数字不相等。随后第二行给出 3 名评委的投票结果。数字 0 代表投票给 a,数字 1 代表投票给
b,其间以一个空格分隔。
输出格式:
按以下格式输出赢家:
The winner is x: P1 + P2
其中 x 是代表赢家的字母,P1 是赢家得到的观众票数,P2 是赢家得到的评委票数。
输入样例:
327 129
1 0 1
输出样例:
The winner is a: 327 + 1
#include
int main(){
int n1,n2,a=0,b=0;
int c[4];
scanf("%d %d",&n1,&n2);
if(n1!=n2){
for(int i = 0 ;i < 3;i++){
scanf("%d",&c[i]);
if(c[i]==0) a++;
else b++;
}
if((n1>n2&&a>=1)||(n1<n2&&a==3))
printf("The winner is a: %d + %d",n1,a);
else printf("The winner is b: %d + %d",n2,b);
}
return 0;
}
根据钱江晚报官方微博的报导,最新的肥胖计算方法为:体重(kg) / 身高(m) 的平方。如果超过 25,你就是胖子。于是本题就请你编写程序自动判断一个人到底算不算胖子。
输入格式:
输入在一行中给出两个正数,依次为一个人的体重(以 kg 为单位)和身高(以 m 为单位),其间以空格分隔。其中体重不超过 1000
kg,身高不超过 3.0 m。
输出格式:
首先输出将该人的体重和身高代入肥胖公式的计算结果,保留小数点后 1 位。如果这个数值大于 25,就在第二行输出 PANG,否则输出 Hai
Xing。
输入样例 1:
100.1 1.74
输出样例 1:
33.1
PANG
输入样例 2:
65 1.70
输出样例 2:
22.5
Hai Xing
#include
#include
int main(){
float high,weight;
scanf("%f%f",&weight,&high);
if(weight/pow(high,2)>25) printf("%.1f\nPANG",weight/pow(high,2));
else printf("%.1f\nHai Xing",weight/pow(high,2));
return 0;
}
国家给出了 8 岁男宝宝的标准身高为 130 厘米、标准体重为 27 公斤;8 岁女宝宝的标准身高为 129 厘米、标准体重为 25 公斤。
现在你要根据小宝宝的身高体重,给出补充营养的建议。
输入格式:
输入在第一行给出一个不超过 10 的正整数 N,随后 N 行,每行给出一位宝宝的身体数据:
性别 身高 体重
其中性别是 1 表示男生,0 表示女生。身高和体重都是不超过 200 的正整数。
输出格式:
对于每一位宝宝,在一行中给出你的建议:
如果太矮了,输出:duo chi yu!(多吃鱼);
如果太瘦了,输出:duo chi rou!(多吃肉);
如果正标准,输出:wan mei!(完美);
如果太高了,输出:ni li hai!(你厉害);
如果太胖了,输出:shao chi rou!(少吃肉)。
先评价身高,再评价体重。两句话之间要有 1 个空格。
输入样例:
4
0 130 23
1 129 27
1 130 30
0 128 27
输出样例:
ni li hai! duo chi rou!
duo chi yu! wan mei!
wan mei! shao chi rou!
duo chi yu! shao chi rou!
#include
int main(){
int n;
scanf("%d",&n);
int people[n][3];
for(int i= 0;i<n;i++){
scanf("%d%d%d",&people[i][0],&people[i][1],&people[i][2]);
}
for(int i= 0;i<n;i++){
if(people[i][0]==1){
if(people[i][1]==130) printf("wan mei! ");
else if(people[i][1]<130) printf("duo chi yu! ");
else printf("ni li hai! ");
if(people[i][2]==27) printf("wan mei!");
else if(people[i][2]<27) printf("duo chi rou!");
else printf("shao chi rou!");
}else{
if(people[i][1]==129) printf("wan mei! ");
else if(people[i][1]<129) printf("duo chi yu! ");
else printf("ni li hai! ");
if(people[i][2]==25) printf("wan mei!");
else if(people[i][2]<25) printf("duo chi rou!");
else printf("shao chi rou!");
}
printf("\n");
}
return 0;
}
科幻电影《流浪地球》中一个重要的情节是地球距离木星太近时,大气开始被木星吸走,而随着不断接近地木“刚体洛希极限”,地球面临被彻底撕碎的危险。但实际上,这个计算是错误的。
洛希极限(Roche limit)是一个天体自身的引力与第二个天体造成的潮汐力相等时的距离。当两个天体的距离少于洛希极限,天体就会倾向碎散,继而成为第二个天体的环。它以首位计算这个极限的人爱德华·洛希命名。(摘自百度百科)
大天体密度与小天体的密度的比值开 3 次方后,再乘以大天体的半径以及一个倍数(流体对应的倍数是 2.455,刚体对应的倍数是 1.26),就是洛希极限的值。例如木星与地球的密度比值开 3 次方是 0.622,如果假设地球是流体,那么洛希极限就是 0.622×2.455=1.52701 倍木星半径;但地球是刚体,对应的洛希极限是 0.622×1.26=0.78372 倍木星半径,这个距离比木星半径小,即只有当地球位于木星内部的时候才会被撕碎,换言之,就是地球不可能被撕碎。
本题就请你判断一个小天体会不会被一个大天体撕碎。
输入格式:
输入在一行中给出 3 个数字,依次为:大天体密度与小天体的密度的比值开 3 次方后计算出的值(≤1)、小天体的属性(0 表示流体、1
表示刚体)、两个天体的距离与大天体半径的比值(>1 但不超过 10)。
输出格式:
在一行中首先输出小天体的洛希极限与大天体半径的比值(输出小数点后2位);随后空一格;最后输出 _ 如果小天体不会被撕碎,否则输出
T_T。
输入样例 1:
0.622 0 1.4
输出样例 1:
1.53 T_T
输入样例 2:
0.622 1 1.4
输出样例 2:
0.78 _
#include
int main(){
float R,S,M,m;
scanf("%f %f %f",&R,&S,&M);
if(!S) m = R*2.455;
else m = R*1.26;
if(M>m) printf("%.2f ^_^",m);
else printf("%.2f T_T",m);
return 0;
}
N 个正数的算数平均是这些数的和除以 N,它们的调和平均是它们倒数的算数平均的倒数。本题就请你计算给定的一系列正数的调和平均值。
输入格式:
每个输入包含 1 个测试用例。每个测试用例第 1 行给出正整数 N (≤1000);第 2 行给出 N 个正数,都在区间 [0.1,100]
内。
输出格式:
在一行中输出给定数列的调和平均值,输出小数点后2位。
输入样例:
8
10 15 12.7 0.3 4 13 1 15.6
输出样例:
1.61
#include
int main(){
int n;
scanf("%d",&n);
float a[n];
float sum=0;
for(int i=0;i<n;i++){
scanf("%f",&a[i]);
sum+=1/a[i];
}
sum /= n;
printf("%.2f",1/sum);
return 0;
}
小强在统计一个小区里居民的出生年月,但是发现大家填写的生日格式不统一,例如有的人写 199808,有的人只写 9808。有强迫症的小强请你写个程序,把所有人的出生年月都整理成 年年年年-月月 格式。对于那些只写了年份后两位的信息,我们默认小于 22 都是 20 开头的,其他都是 19 开头的。
输入格式:
输入在一行中给出一个出生年月,为一个 6 位或者 4 位数,题目保证是 1000 年 1 月到 2021 年 12 月之间的合法年月。
输出格式:
在一行中按标准格式 年年年年-月月 将输入的信息整理输出。
输入样例 1:
9808
输出样例 1:
1998-08
输入样例 2:
0510
输出样例 2:
2005-10
输入样例 3:
196711
输出样例 3:
1967-11
#include
#include
int main(){
char c[8];
gets(c);
if(strlen(c)==6){
for(int i=0;i<strlen(c);i++){
if(i==4) printf("-");
printf("%c",c[i]);
}
}else{
int m =(int)c[0]-'0';
int n =(int)c[1]-'0';
if(m*10+n<22) printf("20%c%c-%c%c",c[0],c[1],c[2],c[3]);
else printf("19%c%c-%c%c",c[0],c[1],c[2],c[3]);
}
return 0;
}
小 T 想买一个玩具很久了,但价格有些高,他打算等便宜些再买。但天天盯着购物网站很麻烦,请你帮小 T 写一个降价提醒机器人,当玩具的当前价格比他设定的价格便宜时发出提醒。
输入格式:
输入第一行是两个正整数 N 和 M (1≤N≤100,0≤M≤1000),表示有 N 条价格记录,小 T 设置的价格为 M。
接下来 N 行,每行有一个实数 P i (−1000.0
对每一条比设定价格 M 便宜的价格记录 P,在一行中输出 On Sale! P,其中 P 输出到小数点后 1 位。
输入样例:
4 99
98.0
97.0
100.2
98.9
输出样例:
On Sale! 98.0
On Sale! 97.0
On Sale! 98.9
#include
int main(){
int N,M;
scanf("%d%d",&N,&M);
float s[N];
for(int i =0;i<N;i++){
scanf("%f",&s[i]);
if(s[i]<M) printf("On Sale! %.1f\n",s[i]);
}
return 0;
}