目录
1001: a+b
1002: 分铅笔
1003: 求圆的面积
1004: 正整数的位数
1005: 英文字母的字母表位序
1006: 两个整数的四则运算
1007: 三位数的数位分离
1008: 压岁钱存款
1009: 等差数列求和
1010: 输出字符ASCII码值的2倍
1011: 虫子吃苹果
1012: 三个整数的和
1013: 身份z求出生日期
1014: 鸡兔同笼
1015: 计算时间
1016: 计算国民生产总值增长倍数
1017: 计算贷款还款时间
1018: 交换变量
1019: 译密码(一)
1020: 从小到大输出三个整数
1021: positive, negative, or zero
1022: 龟兔赛跑
1023: 一元二次方程求解
1024: 奇偶判断
1025: 是否闰年
1026: 两个整数中的较大者
1027: 成绩等级
1028: 向0舍入
1029: 求最大数与最小数
1030: 四则运算
1031: 国庆促销
1032: 求平方根
1033: 分段函数求值
1034: 求建筑物高度
1035: 字母排序
1036: 加班费
1037: 某年某月的天数
1038: 蚂蚁的位置
1039: 吃水果
1040: 求m+(m+1)+…+n
1041: 多用例测试
1042: 求使1+2+…+i>=n成立的最小整数 i
1043: 质数判断
1044: 求1-2/3+3/5-4/7+5/9-6/11+…的前n项和
1045: 质数判断(使用break语句)
1046: 输出a到b之间的不能被3整除的整数
1047: 百文买百鸡
1048: 求a到b之间存在多少个素数
1049: 百文买百鸡(增加无解输出)
1050: 正整数的位数(while实现)
解题方法全部使用c++
1001: a+b
题目描述
计算两个整数的和。
输入
输入两个整数,两个整数用空格隔开。
输出
输出为两个整数的和,单独占一行。
样例输入
1 2
样例输出
3
源代码
#include
using namespace std;
int main()
{
int a,b;
cin>>a>>b;
cout<
1002: 分铅笔
题目描述
有m支铅笔分给n位同学(且m>n),请问每位同学平均可分几支?还剩几支?
输入
输入两个整数m和n,分别表示铅笔的总数和学生的人数(m>n)。
输出
输出两个整数,以逗号分开,分别表示每位同学平均分配的数量及剩余的铅笔数量
样例输入
163 32
样例输出
5,3
源代码
#include
using namespace std;
int main()
{
int m,n;
cin>>m>>n;
cout<
1003: 求圆的面积
题目描述
求半径为r的圆的面积(令π=3.14)。
输入
输入一个浮点类型的数r表示圆的半径。
输出
该圆的面积。
样例输入
2.3
样例输出
16.6106
源代码
#include
#include
const double PI = 3.14;
using namespace std;
int main()
{
double r;
cin>>r;
cout<
1004: 正整数的位数
题目描述
输入一个正整数,输出其位数。
输入
一个正整数
输出
正整数的位数
样例输入
123
样例输出
3
源代码
#include
#include
using namespace std;
int main()
{
int n;
cin>>n;
int ans=log10(n)+1;
cout<
1005: 英文字母的字母表位序
题目描述
输入一个小写英文字符,输出其在英文字母表中的排序。
输入
一个小写英文字符。
输出
该字符在英文字母表中的排序。
样例输入
c
样例输出
3
源代码
#include
using namespace std;
int main()
{
char c;
cin>>c;
int ans = c - 'a' + 1;
cout<
1006: 两个整数的四则运算
题目描述
输入两个整数a和b,请你设计一个程序,计算并输出它们的和、差、积、整数商及余数。
输入
输入只有两个正整数a、b。
输出
输出占一行,包括两个数的和、差、积、商及余数,数据之间用一个空格隔开。
样例输入
1 2
样例输出
3 -1 2 0 1
源代码
#include
using namespace std;
int main()
{
int a,b;
cin>>a>>b;
cout<
1007: 三位数的数位分离
题目描述
从键盘输入一个任意的三位正整数,分别求出其个位、十位和百位上的数字。
输入
输入任意的一个三位正整数
输出
依次输出个位、十位、百位上的数字。以空格间隔,但最后一个数据的后面没有空格,直接换行。
样例输入
123
样例输出
3 2 1
源代码
#include
using namespace std;
int main()
{
int n;
cin>>n;
int ans1 = n / 100;
int ans2 = (n - ans1*100) / 10;
int ans3 = n % 10;
cout<
1008: 压岁钱存款
题目描述
过年了,长辈们给小明发了很多压岁钱,妈妈向小明承诺如果把压岁钱存在妈妈处,则每过一年存款翻倍。
输入
两个用空格分隔的整数,分别表示小明的压岁钱存款数目m,和存在妈妈处的存款年限n。
输出
输出一个整数,代表小明能够得到的存款数目。
样例输入
100 2
样例输出
400
源代码
#include
#include
using namespace std;
int main()
{
int m,n;
cin>>m>>n;
cout<
1009: 等差数列求和
题目描述
给出三个整数,分别表示等差数列的第一项、最后一项和公差,求该数列的和。
输入
输入三个整数,之间用空格隔开。第1个数作为首项,第2个数作为末项,第3个数作为公差。
输出
输出占一行,包含一个整数,为该等差数列的和。
样例输入
2 11 3
样例输出
26
源代码
#include
using namespace std;
int main()
{
int a1,an,d;
cin>>a1>>an>>d;
int n = (an-a1) / d + 1;
cout<<(n*(a1+an)) / 2;
return 0;
}
1010: 输出字符ASCII码值的2倍
题目描述
输入一个字符,将其对应的ASCII码值乘以2再输出
输入
输入一个字符。
输出
字符对应的ASCII码值*2。
样例输入
A
样例输出
130
源代码
#include
using namespace std;
int main()
{
char c;
cin>>c;
int ans = c;
cout<
1011: 虫子吃苹果
题目描述
小明买了一箱苹果共有n个,但不幸的是箱子里混进了一条虫子。虫子每x小时能吃掉一个苹果,假设虫子在吃完一个苹果之前不会吃另一个,那么经过y小时后这箱苹果中还有多少个苹果没有被虫子吃过?
输入
输入三个整数n、x、y,分别表示一箱苹果的个数,虫子吃完一个苹果所需时间和已经过去的时间。
输出
剩余好苹果的个数。
样例输入
3 2 1
样例输出
2
源代码
#include
#include
using namespace std;
int main()
{
int n,x,y;
cin>>n>>x>>y;
double eaten = (y*1.0) / x;
int eat = ceil(eaten);
cout<
1012: 三个整数的和
题目描述
求三个整数的和
输入
输入三个整数,三个整数用空格隔开。
输出
三个整数的和。
样例输入
1234567890 1234567890 1234567890
样例输出
3703703670
源代码
#include
using namespace std;
typedef long long ll;
int main()
{
ll a,b,c;
cin>>a>>b>>c;
cout<
1013: 身份z求出生日期
题目描述
输入一个公民身份z号,输出该公民的出生年月日。
输入
公民身份z号
输出
年月日(YYYY-MM-DD
样例输入
430622197811204019
样例输出
1978-11-20
源代码
#include
using namespace std;
int main()
{
int year,month,day;
scanf("%*6d%4d%2d%2d%*4d",&year,&month,&day);
printf("%04d-%02d-%02d",year,month,day);
return 0;
}
1014: 鸡兔同笼
题目描述
鸡兔同笼,共有n个头,m条腿,求鸡和兔子各有多少只。
输入
输入头数和腿数。
输出
鸡和兔子的只数。
样例输入
35 94
样例输出
23 12
源代码
#include
using namespace std;
int main()
{
int n,m;
cin>>n>>m;
int rab,chi;
rab = (m - 2 * n) / 2;
chi = n - rab;
cout<
1015: 计算时间
题目描述
小明的家距离学校很远,小明想知道从家里出发到学校耗费了多少时间
输入
输入用空格隔开的四个整数,分别代表从家出发的时、分和到校的时、分。
输出
输出用空格隔开的两个整数,代表总共花了多少小时多少分钟。
样例输入
12 45 13 56
样例输出
1 11
源代码
#include
using namespace std;
int main()
{
int h1,m1,h2,m2;
cin>>h1>>m1>>h2>>m2;
int sum = h2 * 60 + m2 - h1 * 60 - m1;
cout<
1016: 计算国民生产总值增长倍数
题目描述
假如我国国民生产总值的年增长率为7%,计算10年后我国国民生产总值与现在相比增长多少百分比(倍数)。计算公式为p=(1+r)n
其中:r为年增长率,n为年数,p为与现在相比的倍数
对于求an, C语言的数学库函数中有求指数的函数pow(a, n)
输入
无,增长率与年数以赋值的方式给出
输出
p=增长倍数,结果保留两位小数,注意末尾的换行
样例输入
无
样例输出
p=1.97
源代码
#include
#include
#include
using namespace std;
int main()
{
double r = 0.07;
int n = 10;
cout<<"p="<
1017: 计算贷款还款时间
题目描述
某人为购房,从银行贷款30万元(d),准备按月还款6000元(p),月利率为1%(r),计算还款月数(m,即多少月还清贷款)。对求得的月份取小数点后一位(四舍五入)。
计算还清贷款月数m的计算公式如下:
可以将公式改写为
C语言数学库函数中有求对数的函数log10,是求以10为底的对数,log10(p)表示logp
输入
无
输出
m=计算出的贷款还款月数,精确到小数点后1位,注意末尾的换行。
样例输入
无
样例输出
m=69.7
源代码
#include
#include
#include
using namespace std;
int main()
{
double r = 0.01;
int d = 300000;
int p = 6000;
cout<<"m="<
1018: 交换变量
题目描述
编写程序,从键盘输入两个整数给变量x和y输出x和y。
在交换x和y中的值后,再输出x和y,验证两个变量中的值是否正确的进行了交换。
输入
1 2
输出
2 1
样例输入
1 2
样例输出
2 1
源代码
#include
using namespace std;
int main()
{
int x,y;
cin>>x>>y;
swap(x,y);
cout<
1019: 译密码(一)
题目描述
写程序将字符串“China”译成密码,密码规律是:用原来的字母后面第四个字母代替原来的字母。例如,字母A后面第四个字母是E,用E代替A。因此,China应译为Glmre。
请编写一个程序,用赋初值的方法使c1, c2, c3, c4, c5这5个字符变量的值分别为'C', 'h', 'i', 'n', 'a',经过运算,使c1, c2, c3, c4, c5的值分别变为'G', 'l', 'm', 'r', 'e'
用printf函数输出这5个字符
输入
无
输出
Glmre,注意末尾的换行
样例输入
无
样例输出
Glmre
源代码
#include
using namespace std;
int main()
{
string s = "China";
for(int i = 0;i < s.size();i ++ )printf("%c",s[i]+4);
cout<
1020: 从小到大输出三个整数
题目描述
输入三个整数,按从小到大的顺序输出这三个数。
输入
三个整数。
输出
从小到大输出三个整数,以空格分隔。
样例输入
2 9 3
样例输出
2 3 9
源代码
#include
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b>>c;
if(a > b)swap(a,b);
if(a > c)swap(a,c);
if(b > c)swap(b,c);
cout<
1021: positive, negative, or zero
题目描述
输入一个整数,判断该数是正数、负数还是零。
输入
一个整数
输出
该数为正数则输出“positive”,负数则输出“negative”,零则输出“zero”。
样例输入
3
样例输出
positive
源代码
#include
using namespace std;
int main()
{
int n;
cin>>n;
if(n == 0)cout<<"zero";
else if(n > 0)cout<<"positive";
else if(n < 0)cout<<"negative";
return 0;
}
1022: 龟兔赛跑
题目描述
龟兔赛跑中,已知乌龟速度为a米每秒,兔子速度为b米每秒,龟兔赛跑的赛程总长度为s米,兔子在比赛中到达终点前的某一时刻睡着了(且仅睡着这一次),耽误了t秒的时间,如果乌龟赢了输出"Turtle win",兔子赢了输出"Rabbit win",否则输出"Tie"。
输入
输入四个用空格隔开的整数,分别代表a,b,s,t。
输出
如果乌龟赢了输出"Turtle win",兔子赢了输出"Rabbit win",否则输出"Tie"。
样例输入
3 6 12 2
样例输出
Tie
源代码
#include
using namespace std;
int main()
{
int a,b,s,t;
cin>>a>>b>>s>>t;
double rabt = (s * 1.0) / b + t;
double turt = (s * 1.0) / a;
if(rabt < turt)cout<<"Rabbit win";
else if(rabt > turt)cout<<"Turtle win";
else if(rabt == turt)cout<<"Tie";
return 0;
}
1023: 一元二次方程求解
题目描述
输入a、b、c,求一元二次方程ax2+bx+c=0的解。
输入
三个整数a、b、c。
输出
方程ax2+bx+c=0的解(保留两位精度),a=0则输出“This is not a quadratic equation”。
样例输入
1 -2 1
样例输出
1.00
提示
输入样例2:3 2 1 输出:-0.33+0.47i -0.33-0.47i
输入样例3:3 2 -1 输出:0.33 -1.00
源代码
#include
#include
#include
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b>>c;
if(a == 0)
{
cout<<"This is not a quadratic equation";
return 0;
}
double delta = b * b - 4 * a * c;
if(delta == 0)
{
double ans = (-b * 1.0 ) / (2 * a);
cout<
1024: 奇偶判断
题目描述
输入一个整数,判断该数的奇偶性(“odd”或“even”)。
输入
一个整数。
输出
奇数则输出“odd”,偶数则输出“even”
样例输入
7
样例输出
odd
源代码
#include
using namespace std;
int main()
{
int n;
cin>>n;
if(n&1)cout<<"odd";
else cout<<"even";
return 0;
}
1025: 是否闰年
题目描述
输入年份year,判断该年是否为闰年。
输入
输入一个整数代表年份
输出
若该年是闰年则输出“year is a leap year”,否则输出“year is not a leap year”。
样例输入
2021
样例输出
2021 is not a leap year
源代码
#include
using namespace std;
int main()
{
int n;
cin>>n;
if((n % 4 == 0 && n % 100 != 0)||(n % 400 == 0))cout<
1026: 两个整数中的较大者
题目描述
输入两个整数,输出其中的较大数
输入
两个整数
输出
两个整数中的较大数
样例输入
6 15
样例输出
15
源代码
#include
using namespace std;
int main()
{
int a,b;
cin>>a>>b;
cout<
1027: 成绩等级
题目描述
给定一个百分制成绩, 请根据百分制成绩输出其对应的等级。转换关系如下:90分及以上为'A',80~89为'B', 70~79为'C', 60~69为'D',60分以下为'E'。
输入
一个百分制成绩(0~100的整数)
输出
成绩对应的等级。
样例输入
90
样例输出
A
源代码
#include
using namespace std;
int main()
{
int score;
cin>>score;
if(score >= 0 && score < 60)cout<<"E";
else if(score >= 60 && score < 70)cout<<"D";
else if(score >= 70 && score < 80)cout<<"C";
else if(score >= 80 && score < 90)cout<<"B";
else if(score >= 90)cout<<"A";
return 0;
}
1028: 向0舍入
题目描述
输入一个双精度浮点数,将其向0舍入到整数。向0舍入的含义是“正数向下舍入,负数向上舍入”。
输入
输入一个双精度浮点数。
输出
该双精度浮点数向0舍入的整数。
样例输入
3.14
样例输出
3
源代码
#include
#include
using namespace std;
int main()
{
double n;
cin>>n;
int ans = 0;
if(n < 0)ans = ceil(n);
else if(n > 0)ans = floor(n);
cout<
1029: 求最大数与最小数
题目描述
输入三个整数,输出最大数和最小数
输入
输入三个整数a、b、c。
输出
三个数中的最大数和最小数(以空格分隔)
样例输入
3 7 9
样例输出
9 3
源代码
#include
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b>>c;
cout<
1030: 四则运算
题目描述
输入运算数和四则运算符,输出计算结果。
输入
输入两个浮点数和一个 *** 作符。
输出
输出计算结果(精度为2)。
样例输入
2.3 5.6 +
样例输出
7.90
源代码
#include
#include
using namespace std;
int main()
{
double a,b;
char c;
cin>>a>>b;
getchar();
cin>>c;
if(c == '+')cout<
1031: 国庆促销
题目描述
商场国庆促销,购物500元以下无折扣;购物500元(含)以上95折;购物1000元(含)以上9折;购物3000元(含)以上85折;购物5000元(含)以上8折。根据消费金额,计算用户实际需要支付的数目
输入
输入一个实数,表示消费金额。
输出
输出一个实数,表示用户实际需要支出的数目,保留两位小数。
样例输入
6000
样例输出
4800.00
源代码
#include
#include
using namespace std;
int main()
{
double n;
cin>>n;
double ans = 0;
if(n < 500)ans = n;
else if(n >= 500 && n < 1000)ans = n * 0.95;
else if(n >= 1000 && n < 3000)ans = n * 0.9;
else if(n >= 3000 && n < 5000)ans = n * 0.85;
else if(n >= 5000)ans = n * 0.8;
cout<
1032: 求平方根
题目描述
从键盘输入一个小于1000的正数,要求输出它的平方根(如平方根不是整数,则输出其整数部分)。
要求在输入数据后先对其进行检查是否为小于1000的正数。若不是,则输出一行错误信息,信息内容为:“invalid data!”
输入
一个小于1000的正数
输出
输出数据的平方根,仅输出整数部分。注意末尾的换行。
样例输入
108.7
样例输出
10
源代码
#include
#include
using namespace std;
int main()
{
double n;
cin>>n;
if(n >= 0 && n < 1000)
{
cout<
1033: 分段函数求值
题目描述
有一个函数y=f(x)的表达式如下:
当x<1时,y=x
当1<=x<10时,y=2x-1
当x>=10时,y=3x-11
输入x的值,输出y相应的值。
末尾换行
输入
一个实数
输出
y=计算的结果,保留2位小数,注意末尾换行。
样例输入
5.1
样例输出
y=9.20
源代码
#include
#include
using namespace std;
int main()
{
double x;
cin>>x;
double y;
if(x < 1)y = x;
else if(x >= 1 && x <10)y = 2 * x - 1;
else if(x >=10)y = 3 * x - 11;
cout<
1034: 求建筑物高度
题目描述
有4个圆塔,圆心分别为(2, 2)、(-2, 2)、(-2, -2)、(2, -2),圆半径为1,如下图所示。这4个塔的高度为10米(m),塔以外无建筑物。
现输入任一点的坐标,求该点的建筑物高度(塔外的高度为零)。
输入
输入以圆括号括起来的两个数字,两个数字之间以逗号(,)分隔,格式如:(x,y)
如下为正确输入:
(1.5,1.9)
浮点型变量,请定义为float类型
输出
该建筑物的高度,末尾换行
样例输入
(1.8,1.9)
样例输出
10
源代码
#include
#include
using namespace std;
int main()
{
double x,y;
scanf("(%lf,%lf)",&x,&y);
int h = 0;
if(sqrt(pow(x-2,2))+pow(y-2,2) <= 1)h = 10;
else if(sqrt(pow(x-2,2))+pow(y-2,-2) <= 1)h = 10;
else if(sqrt(pow(x-2,-2))+pow(y-2,2) <= 1)h = 10;
else if(sqrt(pow(x-2,-2))+pow(y-2,-2) <= 1)h = 10;
cout<
1035: 字母排序
题目描述
输入三个字母,按字母表顺序输出这三个字母。
输入
三个字母
输出
按字母表顺序输出
样例输入
cba
样例输出
abc
源代码
#include
using namespace std;
int main()
{
char a,b,c;
cin>>a>>b>>c;
if(a > b)swap(a,b);
if(a > c)swap(a,c);
if(b > c)swap(b,c);
cout<
1036: 加班费
题目描述
编写一个计算员工收入的程序,公司按照规定工时的工资10元/小时付给每个员工160个工时的薪水,按3倍的工资率付给160个工时以外的工资。
输入
输入员工的工时数,1个整数
输出
计算员工的收入
样例输入
20
样例输出
200
源代码
#include
using namespace std;
int main()
{
int n;
cin>>n;
int sum = 0;
if(n >= 0 && n <= 160)sum = n * 10;
else if(n > 160)sum = 10 * 160 + (n - 160) * 30;
cout<
1037: 某年某月的天数
题目描述
输入x和y,输出x年y月有多少天。
输入
一行两个正整数x和y,分别表示年份和月份。x在int范围以内,y为1~12。
输出
一行一个整数,表示该年该月有多少天。
样例输入
2021 3
样例输出
31
源代码
#include
using namespace std;
int a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};
int b[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int main()
{
int year,month;
cin>>year>>month;
if((year % 4 == 0 && year % 100 != 0)||(year % 400 == 0))
{
cout<
1038: 蚂蚁的位置
题目描述
有一只蚂蚁在一个圆上爬行,圆心坐标是(0,0),半径r=4.5,任意输入蚂蚁在圆上的坐标(x,y),判断这只蚂蚁是在圆内,圆周上,还是在圆外。
输入
两个浮点数x,y
输出
如果在圆内,输出in
如果在圆外,输出out
如果在圆上,输出on
样例输入
1.0 1.0
样例输出
in
源代码
#include
#include
using namespace std;
int main()
{
double x,y;
cin>>x>>y;
double s = sqrt(pow(x,2)+pow(y,2));
if(s < 4.5)cout<<"in";
else if(s == 4.5)cout<<"on";
else if(s > 4.5)cout<<"out";
return 0;
}
1039: 吃水果
题目描述
妈妈去超市买水果,她问小明想吃什么水果,现在超市只有五种水果,分别是Apple 苹果,Banana 香蕉,Cherry 樱桃,Durian 榴莲,Mango 芒果。如果小明说'A',就是想吃Apple,如果小明说'B',就是想吃Banana,如果小明说'C',就是想吃Cherry ,如果小明说'D',就是想吃Durian,如果小明随便说其它字母,妈妈就买Mango。请采用switch语句实现。
输入
水果的英文单词首字母的大小形式
输出
水果的英文单词
样例输入
A
样例输出
Apple
源代码
#include
using namespace std;
int main()
{
char c;
cin>>c;
switch(c)
{
case 'A':cout<<"Apple";break;
case 'B':cout<<"Banana";break;
case 'C':cout<<"Cherry";break;
case 'D':cout<<"Durian";break;
case 'M':cout<<"Mango";break;
default:cout<<"Mango";break;
}
return 0;
}
1040: 求m+(m+1)+…+n
题目描述
求m+(m+1)+…+n。
输入
两个正整数m和n(m<=n)
输出
m加到n的和
样例输入
1 3
样例输出
6
源代码
#include
using namespace std;
int main()
{
int m,n;
cin>>m>>n;
int sum = 0;
for(int i = m;i <= n;i ++)sum += i;
cout<
1041: 多用例测试
题目描述
输入多组整数,每组数据包含两个整数a和b,对每组数据输出a+b的结果。
输入
多组整数,每组一行,为两个以空格分隔的整数。
输出
对每组数据输出a+b的结果,每组结果占一行。
样例输入
1 2
3 4
样例输出
3
7
源代码
#include
using namespace std;
int main()
{
int a,b;
while(cin>>a>>b)cout<
1042: 求使1+2+…+i>=n成立的最小整数 i
题目描述
输入正整数n,求使1+2+…+i>=n成立的最小整数i。
输入
一个整数n。
输出
使1+2+…+i>=n成立的最小整数i。
样例输入
123
样例输出
16
源代码
#include
using namespace std;
int main()
{
int n;
cin>>n;
int sum = 0,i;
for(i = 1;sum < n;i ++ )sum += i;
cout<
1043: 质数判断
题目描述
输入正整数n,判定它是否为素数(prime,又称质数)。
输入
一个正整数n。
输出
若n为质数则输出“Yes”,否则输出“No”。
样例输入
5
样例输出
Yes
源代码
#include
#include
using namespace std;
int main()
{
int n;
cin>>n;
if(n == 1)
{
cout<<"No";
return 0;
}
int flag = 1;
for(int i = 2;i <= sqrt(n);i ++ )
{
if(n % i == 0)
{
flag = 0;
break;
}
}
if(flag == 1)cout<<"Yes";
else cout<<"No";
return 0;
}
1044: 求1-2/3+3/5-4/7+5/9-6/11+…的前n项和
题目描述
输入正整数n,求1-2/3+3/5-4/7+5/9-6/11+…的前n项和,结果保留3位小数。
输入
一个正整数n
输出
求1-2/3+3/5-4/7+5/9-6/11+...的前n项和。
样例输入
100
样例输出
0.391
源代码
#include
#include
using namespace std;
int main()
{
int n;
cin>>n;
double sum = 0;
int flag = 1;
for(int i = 1;i <= n;i ++ )
{
double item = (i * 1.0) / (2 * i - 1) * flag;
sum += item;
flag = - flag;
}
cout<
1045: 质数判断(使用break语句)
题目描述
输入正整数n,判定它是否为素数(prime,又称质数)。
输入
一个正整数n。
输出
若n为质数则输出“Yes”,否则输出“No”
样例输入
7
样例输出
Yes
源代码
#include
#include
using namespace std;
int main()
{
int n;
cin>>n;
if(n == 1)
{
cout<<"No";
return 0;
}
int flag = 1;
for(int i = 2;i <= sqrt(n);i ++ )
{
if(n % i == 0)
{
flag = 0;
break;
}
}
if(flag == 1)cout<<"Yes";
else cout<<"No";
return 0;
}
1046: 输出a到b之间的不能被3整除的整数
题目描述
输出a到b之间的不能被3整除的整数。
输入
两个正整数a、b。
输出
a到b之间的不能被3整除的整数,以空格分隔。
样例输入
1 10
样例输出
1 2 4 5 7 8 10
源代码
#include
using namespace std;
int main()
{
int a,b;
cin>>a>>b;
for(int i = a;i <= b;i ++ )
{
if(i % 3 != 0)cout<
1047: 百文买百鸡
题目描述
公鸡五文钱一只,母鸡三文钱一只,小鸡一文钱三只,用m文钱买m只鸡,公鸡、母鸡、小鸡各买多少只?
输入
正整数m。
输出
只输出一个解,即公鸡数量最少的那个解(输出公鸡、母鸡和小鸡的只数,以空格隔开)。
样例输入
100
样例输出
0 25 75
源代码
#include
using namespace std;
int main()
{
int m;
cin >> m;
for(int i = 0;i <= m / 5;i ++ )
{
for(int j = 0;j <= m / 3;j ++ )
{
int k = m - i - j;
if(i * 15 + j * 9 + k == m * 3)
{
cout<
1048: 求a到b之间存在多少个素数
题目描述
求a到b之间存在多少个素数。
输入
两个正整数a、b。
输出
a到b之间的全部素数的个数。
样例输入
100 200
样例输出
21
源代码
#include
#include
using namespace std;
bool judge(int n)
{
if(n == 1)return false;
for(int i = 2;i <= sqrt(n);i ++ )
{
if(n % i == 0)return false;
}
return true;
}
int main()
{
int a,b;
cin >> a >> b;
int sum = 0;
for(int i = a;i <= b;i ++ )
{
if(judge(i))sum++;
}
cout<
1049: 百文买百鸡(增加无解输出)
题目描述
公鸡五文钱一只,母鸡三文钱一只,小鸡一文钱三只,用m文钱买m只鸡,公鸡、母鸡、小鸡各买多少只?
输入
一个正整数m。
输出
若有解只输出一个解,即公鸡数量最少的那个解;若无解输出“No answer”。
样例输入
100
样例输出
0 25 75
源代码
#include
using namespace std;
int main()
{
int m;
cin >> m;
for(int i = 0;i <= m / 5;i ++ )
{
for(int j = 0;j <= m / 3;j ++ )
{
int k = m - i - j;
if(i * 15 + j * 9 + k == m * 3)
{
cout<
1050: 正整数的位数(while实现)
题目描述
输入一个正整数,输出其位数(用while语句实现)。
输入
一个正整数。
输出
正整数的位数。
样例输入
123
样例输出
3
源代码
#include
using namespace std;
int main()
{
int n;
cin>>n;
int ans = 0;
while(n > 0)
{
n /= 10;
ans ++;
}
cout<
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)