输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三个字符。
#include
#include
using namespace std;
int main(){
int a,b,c;
while(~scanf("%c%c%c",&a,&b,&c)){
getchar(); //读取行最后的换行符
if(a>b){
a = a^b;
b = b^a;
a = a^b;
}
if(a>c){
a = a^c;
c = c^a;
a = a^c;
}
if(b>c){
b = b^c;
c = c^b;
b = b^c;
}
printf("%c %c %c\n",a,b,c);
}
return 0;
}
输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离。
#include
#include
#include
using namespace std;
int main(){
float x1,y1,x2,y2,dist;
while(~scanf("%f %f %f %f",&x1,&y1,&x2,&y2)){
dist= sqrt(pow(x1-x2,2)+pow(y1-y2,2));
printf("%.2f\n",dist);
}
return 0;
}
根据输入的半径值,计算球的体积。
#include
#include
using namespace std;
#define PI 3.1415927
int main(){
double r,v;
while(~scanf("%lf",&r)){
v = 4*PI*r*r*r/3;
printf("%.3lf\n",v);
}
return 0;
}
求实数的绝对值。
#include
#include
#include
using namespace std;
int main(){
double num;
while(~scanf("%lf",&num)){
printf("%.2lf\n",abs(num));
}
return 0;
}
输入一个百分制的成绩t,将其转换成对应的等级,具体转换规则如下:
90~100为A;80~89为B;70~79为C;60~69为D;0~59为E;
#include
int main()
{
int score;
while(scanf("%d",&score) != EOF)
{
if(score < 0 || score > 100)
{
printf("Score is error!\n");
continue;
}
score = score / 10;
switch(score){
case 10:case 9:
printf("A\n");
break;
case 8:
printf("B\n");
break;
case 7:
printf("C\n");
break;
case 6:
printf("D\n");
break;
default:
printf("E\n");
break;
}
}
return 0;
}
给定一个日期,输出这个日期是该年的第几天。
#include
#include
using namespace std;
int main(){
int days[12] ={31,0,31,30,31,30,31,31,30,31,30,31}; //每个月份各有多少天。由于2月不确定,所以暂且设为0
int year, month, date;
int total = 0;
while(~scanf("%d/%d/%d",&year,&month,&date)){
total = 0;
if(year%400==0 || (year%4==0 && year%100!=0)){
days[1] = 29;
}else{
days[1] = 28;
}
for(int i=0;i
给你n个整数,求他们中所有奇数的乘积。
#include
#include
using namespace std;
int main(){
int n,sum,num;
while(~scanf("%d",&n)){
sum=1;
while(n--){
cin>>num;
if(num%2==1) sum*=num;
}
cout<
给定一段连续的整数,求出他们中所有偶数的平方和以及所有奇数的立方和。
#include
#include
#include
using namespace std;
int main(){
int m,n,sum2,sum3;
while(~scanf("%d%d",&m,&n)){
if(m>n){
m=m^n;
n=n^m;
m=m^n;
}
sum2=0;
sum3=0;
for(int i=m;i<=n;i++){
if(i%2==0){
sum2+=pow(i,2);
}else{
sum3+=pow(i,3);
}
}
printf("%d %d\n",sum2,sum3);
}
return 0;
}
统计给定的n个数中,负数、零和正数的个数。
#include
#include
using namespace std;
int main(){
int n,num_p,num_zero,num_n;
double num;
while(~scanf("%d",&n) && n!=0){
num_p=0;
num_zero=0;
num_n=0;
while(n--){
cin>>num;
if(num<0){
num_p++;
}else if(num == 0){
num_zero++;
}else{
num_n++;
}
}
printf("%d %d %d\n",num_p,num_zero,num_n);
}
return 0;
}
数列的定义如下:
数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。
#include
#include
#include
using namespace std;
int main(){
int m;
double n,sum;
while(~scanf("%lf%d",&n,&m)){
sum=0;
for(int i=0;i
春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的:
“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=1^3+5^3+3^3。
现在要求输出所有在m和n范围内的水仙花数。
#include
#include
using namespace std;
int main(){
int m,n,g,s,b,x;
while(~scanf("%d%d",&m,&n)){
x=0;
for(int i=m;i<=n;i++){
g=i%10;
s=i%100/10;
b=i/100;
if(i == g*g*g+s*s*s+b*b*b){
if(x==0){
printf("%d",i);
}else{
printf(" %d",i);
}
x++;
}
}
if(x==0){
cout<<"no"<