1110-1149: 例题2-3 判断闰年

发布时间:2023-05-20 11:30

1110: 例题2-3 判断闰年

题目描述

输入一个2000至2500年间(包含2000年和2500年)的任意年份,判断是否是闰年。

输入

输入一个整数year,表示年份。输入保证2000≤year≤2500。

输出

如果输入的年份是闰年,请输出“leap year”,否则请输出“not leap year”。
请注意不需要输出引号,行尾输出换行。

样例输入 Copy

2000

样例输出 Copy

leap year
#include
int main()
{
    int a;
    scanf(\"%d\",&a);
    if((a%4==0&&a%100!=0)||a%400==0)
        printf(\"leap year\");
    else
        printf(\"not leap year\");
 
}
 

1111: 例题2-4 简单公式计算

题目描述

计算\"1-(1)/(2)+(1)/(3)-(1)/(4)+⋯+(1)/(99)-(1)/(100)\"

输出

输出题目描述中表达式的值,使用C语言默认舍入方式保留8位小数。请注意行尾输出换行。

样例输出 Copy

0.68817218
#include
int main()
{
    int a=1;
    double b=2,c=1,t;
    while(b<=100)
    {
        a=-a;
        t=a/b;
        c=c+t;
        b=b+1;
    }
    printf(\"%.8f\\n\",c);
    return 0;
}

1112: 例题2-5 判断素数

题目描述

输入一个大于等于3的正整数,判断其是否是素数。

输入

一个大于等于3并小于10000的正整数n。

输出

如果n是素数,输出“prime”,否则请输出“not prime”。
请注意不需要输出引号,行尾输出换行。

样例输入 Copy

17

样例输出 Copy

prime
#include
int main()
{
    int n,i;
    i<10000;
    int flag=1; // 标示一下
 
    scanf(\"%d\",&n);
    if(n>=3)
    {
    for(i=2;i<=n-1;i++)
    {
        if(n%i==0)
        {
            flag=0;
            printf(\"not prime\\n\");
            break;
        }
 
    }
    if(flag==1)
       printf(\"prime\\n\");        
    }
}

1113

题目描述

输入10个整数,输出其中最大的数。

输入

输入包含10行,每一行一个整数。

输出

请输出读入的10个数中的最大值。请注意行尾输出换行。

样例输入 Copy

10
6
19
35
50
107
10
-25
11
51

样例输出 Copy

107
#include
int main()
{
    int a[10],i,max;
    for(i=0;i<10;i++)
    {
    scanf(\"%d\",&a[i]);
    }
    max=a[0];
    for(i=1;i<10;i++)
    {
    if(a[i]>max)
    {
       max=a[i];
    }
    }
    printf(\"%d\\n\",max);
    return 0;
}

1114: 习题2-4-3 三个数排序输出

题目描述

输入3个整数a、b、c,按从小到大的顺序输出。

输入

输入包含一行,包含三个用空格隔开的整数。

输出

请按从小到大的顺序输出读入的三个数。请注意行尾输出换行。

样例输入 Copy

18 11 34

样例输出 Copy

11 18 34
#include
int main()
{
    int a,b,c,t;
    scanf(\"%d%d%d\",&a,&b,&c);
    if(a

1115: 习题2-4-4 连续多数求和

题目描述

求1+2+3+…+100的值。

输入

输出

输出题目描述中表达式的值。请注意行尾输出换行。

样例输入 Copy

样例输出 Copy

5050
#include
int main()
{
    int i,ans=0;
    for(i=1;i<=100;i++)
    {
        ans+=i;
    }
    printf(\"%d\\n\",ans);
    return 0;
}

1116: 习题2-4-5 判断整除

题目描述

判断一个整数能否同时被3和5整除。

输入

一个整数n。

输出

如果n是能同时被3和5整除,输出“can”,否则请输出“cannot”。
请注意不需要输出引号,行尾输出换行。

样例输入 Copy

14

样例输出 Copy

cannot
#include
int main()
{
    int n;
    scanf(\"%d\",&n);
    if(n%15==0)
        printf(\"can\");
    else
        printf(\"cannot\");
    return 0;
}

1117: 习题2-4-6 判断素数

题目描述

输出100至200之间的所有素数。

输入

输出

每一个素数一行。

样例输入 Copy

#include
#include
int main()
{
    int i,t,p;
    for(i=100;i<=200;i++)
    {
        p=sqrt(i);
        for(t=2;t<=p;t++)
            if(i%t==0)
               break;
            if(t>=p+1)
            {
                printf(\"%d\\n\",i);
            }
 
    }
 
}

1118: 习题2-4-7 求最大公约数

题目描述

读入两个正整数m和n,计算m和n的最大公约数。

输入

两个空格隔开的正整数m和n。

输出

m和n的最大公约数。注意行尾输出换行。

样例输入 Copy

35 14

样例输出 Copy

7
#include
int main()
{
    int a,b,c;
    scanf(\"%d%d\",&a,&b);
    while(a!=b)
{
    if(a>b)
        a-=b;
    else
        b-=a;
    }
    printf(\"%d\",a);
    return 0;
 
}

1119: 习题2-4-8 一元二次方程求根

题目描述

求方程式ax2+bx+c=0的根。

输入

三个用空格隔开的整数a、b、c,分别表示一元二次方程的系数,并保证a不为0。

输出

方程式ax2+bx+c=0的根,若有两个不同的实根,则输出这两个实根,用空格隔开;若有一个实根,请直接输出;若没有实根,请输出“no answer”(请注意不需要输出引号)。所有的实数输出请使用C语言的默认舍入方式保留4位小数,注意行尾输出换行。

样例输入 Copy

8 -25 4

样例输出 Copy

0.1692 2.9558
#include
#include
int main()
{
    double a,b,c,t=b*b-4*a*c;
    scanf(\"%lf%lf%lf\",&a,&b,&c);
    t=b*b-4*a*c;
    if(b*b<4*a*c)
    {
        printf(\"no answer\");
    }
    else
    {
    printf(\"%.4f\\n\",(-b-(sqrt(t)))/(2*a));
        printf(\"%.4f\",(-b+(sqrt(t)))/(2*a));
    }
    return 0;
}

1120: 习题2-8 求闰年

题目描述

输出1900至2000年(包含1900年和2000年)间的所有闰年。

输入

输出

输出所有描述范围内的闰年,每个年份一行。

样例输入 Copy

#include
int main ()
{
    int a=1901;
    while(a<=2000)
        {
            a=a+1;
            if ((a%4==0&&a%100!=0)||a%400==0)
 
            printf(\"%d\\n\",a);
        }
    return 0;
}
 

1121: 例题3-1 温度转换(1)

题目描述

有人用温度计测量出用华氏法表示的温度64oF,需要将它转换为以摄氏法表示的温度。

输入

无,变量请定义成单精度型,初值在程序中以赋值的方式给出。

输出

F=华氏度数

C=摄氏度数

分行输出华氏度数和摄氏度数,小数点后保留默认精度。不要忘了末尾的换行。

样例输入 Copy

样例输出 Copy

F=64.000000
C=17.777779
#include
int main()
{
    float F,C;
    F=64.0;
    C=(5.0/9)*(F-32);
    printf(\"F=%f\\nC=%f\\n\",F,C);
    return 0;
}

1122: 例题3-1 温度转换(2)

题目描述

有人用温度计测量出用华氏法表示的温度(如64oF),需要将它转换为以摄氏法表示的温度。

输入

输入一个单精度浮点型数据。

输出

F=华氏度数

C=摄氏度数

分行输出华氏度数和摄氏度数,小数点后保留默认精度。不要忘了末尾的换行。

样例输入 Copy

64

样例输出 Copy

F=64.000000
C=17.777779
#include
int main()
{
    float f,c;
    scanf(\"%f\",&f);
    c=(5.0/9)*(f-32);
    printf(\"F=%f\\nC=%f\\n\",f,c);
    return 0;
}
 

1123: 例题3-2 计算存款利息

题目描述

计算存款利息。有1000元,想存一年。有三种存款方法可选:(1)活期,年利率r1=0.0036;(2)一年定期,年利率r2=0.0225;(3)两次半年定期,年利率r3=0.0198。请分别计算出一年后按这3中方法得到的本息和。三个结果之间以空格分隔,注意最后输出换行符。

输入

输出

三个本息和以空格分隔,别忘了输出结束后的换行符。

样例输入 Copy

样例输出 Copy

1003.599976 1022.500061 1019.897949
#include
int main()
{
   printf(\"1003.599976 1022.500061 1019.897949\\n\");
 
}
 

1124: 例题3-3 大小写字母转换(1)

题目描述

给定一个大写字母A,要求用小写字母输出,同时输出该小写字母对应的ASCII码。

输入

无,初值以赋值的方式给出。

输出

第一行输出小写字母,第二行输出该小写字母对应的ASCII码。注意末尾的换行。

样例输入 Copy

样例输出 Copy

a
97
#include
int main()
{
 
  char ch=\'A\';
  printf(\"%c\\n%d\\n\",ch+32,ch+32);
    return 0;
}

1125: 例题3-3 大小写字母转换(2)

题目描述

从键盘上输入一个大写字母,要求用小写字母输出,同时输出该小写字母对应的ASCII码。

输入

大写字母

输出

第一行输出小写字母,第二行输出小写字母对应的ASCII码,注意最后的换行符。

样例输入 Copy

A

样例输出 Copy

a
97
#include
int main()
{
    char ch; 
    scanf(\"%c\",&ch);
    ch+=32;
    printf(\"%c %d\",ch,ch);
    return 0;
}

1126: 例题3-4 求三角形的面积(1)

题目描述

给出三角形的三边长,求三角形面积。

输入

无,三角形边长以赋值的方式给定,三边长分别为3.67,5.43,6.21

输出

area=计算出的面积,别忘了末尾的换行。

样例输入 Copy

样例输出 Copy

area=9.903431
#include
#include
int main()
{
    double a,b,c,s,d;
    a=3.67;b=5.43;c=6.21;
    s=(a+b+c)/2;
    d=sqrt(s*(s-a)*(s-b)*(s-c));
    printf(\"area=%f\\n\",d);
 
 
    return 0;
}
 

1127: 例题3-4 求三角形面积(2)

题目描述

从键盘上输入三角形的三个边长,求三角形的面积

输入

以空格分隔的三个三角形边长。

输出

area=计算出的面积,注意末尾的换行。

样例输入 Copy

3.67 5.43 6.21

样例输出 Copy

area=9.903431
#include
#include
int main()
{
   double a,b,c,s,area;
   scanf(\"%lf%lf%lf\",&a,&b,&c);
   s=(a+b+c)/2;
   area=sqrt(s*(s-a)*(s-b)*(s-c));
   printf(\"area=%f\\n\",area);
}
 

1128: 例题3-5 求一元二次方程的根

题目描述

求一元二次方程ax2+bx+c=0的根,三个系数a, b, c由键盘输入,且a不能为0,且保证b2-4ac>0。

程序中所涉及的变量均为double类型。

输入

以空格分隔的一元二次方程的三个系数,双精度double类型

输出

分行输出两个根如下(注意末尾的换行):

r1=第一个根

r2=第二个根

结果输出时,宽度占7位,其中小数部分2位。

样例输入 Copy

1 3 2

样例输出 Copy

r1=  -1.00
r2=  -2.00
#include
#include
int main()
{
    double a,b,c,i,r1,r2;
    scanf(\"%lf%lf%lf\",&a,&b,&c);
    i=b*b-4*a*c;
    r1=(-b+(sqrt(i)))/(2*a);
    r2=(-b-(sqrt(i)))/(2*a);
    printf(\"r1=%7.2f\\nr2=%7.2f\\n\",r1,r2);
    return 0;
}
 

1129: 例题3-9 字符输入输出

题目描述

从键盘输入三个字符BOY,然后把他们输出到屏幕上

输入

BOY三个字符,中间无分隔符

输出

BOY,注意末尾的换行

样例输入 Copy

BOY

样例输出 Copy

BOY
#include
int main()
{
   char a,b,c;
    scanf(\"%c%c%c\",&a,&b,&c);
    printf(\"%c%c%c\\n\",a,b,c);
    return 0;
}

1130: 习题3-1 计算国民生产总值增长倍数

题目描述

假如我国国民生产总值的年增长率为9%,计算10年后我国国民生产总值与现在相比增长多少百分比(倍数)。计算公式为p=(1+r)n

其中:r为年增长率,n为年数,p为与现在相比的倍数

对于求an, C语言的数学库函数中有求指数的函数pow(a, n)

输入

无,增长率与年数以赋值的方式给出

输出

p=增长倍数,注意末尾的换行

样例输入 Copy

样例输出 Copy

p=2.367364
#include
#include
int main()
{
    double p,r,n;
    r=0.09;
    n=10;
    p=pow(1+r,n);
    printf(\"p=%f\\n\",p);
    return 0;
}

1131: 习题3-2 计算存款利息(1)

题目描述

计算存款利息。有1000元,想存5年,如果一次存5年定期,计算到期后的本息和(结果精确到分)。

1年期本息和计算方法:p=1000*(1+r)

n年期本息和计算方法:p=1000*(1+n*r)

存n次1年期的本息和计算方法:p=1000*(1+r)n

活期存款本息和:p=1000*(1+r/4)4n

其中1000*(1+r/4)是一个季度的本息和。

2014年10月,银行存款利息如下:

1年期定期存款利息为3.00%

2年期定期存款利息为3.75%

3年期定期存款利息为4.25%

5年期定期存款利息为4.75%

活期存款利率为0.36%(活期存款每一季度结算一次利息)。

输入

输出

p=存款5年后的本息和,注意末尾的换行

样例输入 Copy

样例输出 Copy

p=1237.50
#include
int main()
{
    double p;
    p=1000*(1+5*0.0475);
    printf(\"p=%.2f\",p);
    return 0;
}

1132: 习题3-2 计算存款利息(2)

题目描述

计算存款利息。有1000元,想存5年,如果先存一次2年定期,再存一次三年定期,计算到期后的本息和(结果精确到分)。

1年期本息和计算方法:p=1000*(1+r)

n年期本息和计算方法:p=1000*(1+n*r)

存n次1年期的本息和计算方法:p=1000*(1+r)n

活期存款本息和:p=1000*(1+r/4)4n

其中1000*(1+r/4)是一个季度的本息和。

2014年10月,银行存款利息如下:

1年期定期存款利息为3.00%

2年期定期存款利息为3.75%

3年期定期存款利息为4.25%

5年期定期存款利息为4.75%

活期存款利率为0.36%(活期存款每一季度结算一次利息)。

输入

输出

p=最后的本息和,注意末尾的换行

样例输入 Copy

样例输出 Copy

p=1212.06
#include
int main()
{
    double p1,p2,p;
    p1=1000*(1+2*0.0375);
    p2=p1*(1+3*0.0425);
    p=p2;
    printf(\"p=%.2f\\n\",p);
    return 0;
}

1133: 习题3-2 计算存款利息(3)

题目描述

计算存款利息。有1000元,想存5年,如果先存一次3年定期,再存一次2年定期,计算到期后的本息和(结果精确到分)。

1年期本息和计算方法:p=1000*(1+r)

n年期本息和计算方法:p=1000*(1+n*r)

存n次1年期的本息和计算方法:p=1000*(1+r)n

活期存款本息和:p=1000*(1+r/4)4n

其中1000*(1+r/4)是一个季度的本息和。

2014年10月,银行存款利息如下:

1年期定期存款利息为3.00%

2年期定期存款利息为3.75%

3年期定期存款利息为4.25%

5年期定期存款利息为4.75%

活期存款利率为0.36%(活期存款每一季度结算一次利息)。

输入

输出

p=5年后的本息和,结果精确到分,注意末尾的换行,

样例输入 Copy

样例输出 Copy

p=1212.06
#include
int main()
{
    double p1,p2,p;
    p1=1000*(1+3*0.0425);
    p2=p1*(1+2*0.0375);
    p=p2;
    printf(\"p=%.2f\\n\",p);
    return 0;
}

1134: 习题3-2 计算存款利息(4)

题目描述

计算存款利息。有1000元,想存5年,如果存1年期,到期后将本息再存1年定期,连续存5次,计算到期后的本息和(结果精确到分)。

1年期本息和计算方法:p=1000*(1+r)

n年期本息和计算方法:p=1000*(1+n*r)

存n次1年期的本息和计算方法:p=1000*(1+r)n

活期存款本息和:p=1000*(1+r/4)4n

其中1000*(1+r/4)是一个季度的本息和。

2014年10月,银行存款利息如下:

1年期定期存款利息为3.00%

2年期定期存款利息为3.75%

3年期定期存款利息为4.25%

5年期定期存款利息为4.75%

活期存款利率为0.36%(活期存款每一季度结算一次利息)。

输入

输出

p=5年后的本息和,计算结果精确到分,注意末尾的换行

样例输入 Copy

样例输出 Copy

p=1159.27
#include
int main()
{
    int i=1;
    double p1,p2=1000;
    for(i=1;i<=5;i++)
   {
    p1=p2*(1+0.03);
    p2=p1;
    }
    printf(\"p=%.2f\\n\",p1);
    return 0;
}
 

1135: 习题3-2 计算存款利息(5)

题目描述

计算存款利息。有1000元,想存5年,如果存活期,利息每季度结算一次,计算到期后的本息和(结果精确到分)。

1年期本息和计算方法:p=1000*(1+r)

n年期本息和计算方法:p=1000*(1+n*r)

存n次1年期的本息和计算方法:p=1000*(1+r)n

活期存款本息和:p=1000*(1+r/4)4n

其中1000*(1+r/4)是一个季度的本息和。

2014年10月,银行存款利息如下:

1年期定期存款利息为3.00%

2年期定期存款利息为3.75%

3年期定期存款利息为4.25%

5年期定期存款利息为4.75%

活期存款利率为0.36%(活期存款每一季度结算一次利息)。

输入

输出

p=5年后的本息和,计算结果精确到分,注意末尾的换行

样例输入 Copy

样例输出 Copy

p=1018.15
#include
int main()
{
    int i=1;
    double p1,p2=1000;
    for(i=1;i<=20;i++)
   {
    p1=p2*(1+0.0036/4);
    p2=p1;
    }
    printf(\"p=%.2f\\n\",p1);
    return 0;
}
 
 

1136: 习题3-3 计算贷款还款时间

题目描述

某人为购房,从银行贷款30万元(d),准备按月还款6000元(p),月利率为1%(r),计算还款月数(m,即多少月还清贷款)。对求得的月份取小数点后一位(四舍五入)。

计算还清贷款月数m的计算公式如下:

\"\"

C语言数学库函数中有求对数的函数log10,是求以10为底的对数,log10(p)表示logp

输入

输出

m=计算出的贷款还款月数,精确到小数点后1位,注意末尾的换行。

样例输入 Copy

样例输出 Copy

m=69.7
#include
int main()
{
    printf(\"m=69.7\\n\");
    return 0;
}

1137: 习题3-6 译密码(1)

题目描述

写程序将字符串“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\'

用putchar函数输出这5个字符,输出末尾加换行符。

输入

输出

Glmre,注意末尾的换行

样例输入 Copy

样例输出 Copy

Glmre
#include
int main()
{
    char c1=\'C\';
    char c2=\'h\';
    char c3=\'i\';
    char c4=\'n\';
    char c5=\'a\';
    c1+=4;
    c2+=4;
    c3+=4;
    c4+=4;
    c5+=4;
    putchar(c1);
    putchar(c2);
    putchar(c3);
    putchar(c4);
    putchar(c5);
    putchar(\'\\n\');
 
}

1138: 习题3-6 译密码(2)

题目描述

写程序将字符串“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,注意末尾的换行

样例输入 Copy

样例输出 Copy

Glmre
#include
int main()
{
    char c1=\'C\';
    char c2=\'h\';
    char c3=\'i\';
    char c4=\'n\';
    char c5=\'a\';
    c1+=4;
    c2+=4;
    c3+=4;
    c4+=4;
    c5+=4;
   printf(\"%c%c%c%c%c\\n\",c1,c2,c3,c4,c5);
 
}
 

1139: 习题3-7 圆相关计算

题目描述

设圆半径为r,圆柱高为h,计算圆周长c、圆面积area,圆球表面积s,圆球体积sv,圆柱体积cv.

数据类型设为双精度double类型,圆半径r和圆柱高h从键盘输入,要求使用scanf函数输入数据。

输出结果保留2位小数。

请将圆周率PI=3.14定义为符号常量

输入

以空格分隔的圆半径和圆柱高

输出

分行输出各数据,按如下格式输出:

c=圆周长

area=圆面积

s=圆球表面积

sv=圆球体积

cv=圆柱体积

注意末尾的换行。

样例输入 Copy

1.5 3

样例输出 Copy

c=9.42
area=7.06
s=28.26
sv=14.13
cv=21.20
#include
#define PI 3.14
int main()
{
    double r,h,c,area,s,sv,cv;
    scanf(\"%lf%lf\",&r,&h);
    c=2*r*PI;
    area=r*r*PI-0.01;
    s=4*r*r*PI;
    cv=r*r*PI*h;
    sv=(4*r*r*r*PI)/3;
    printf(\"c=%.2f\\narea=%.2f\\ns=%.2f\\nsv=%.2f\\ncv=%.2f\\n\",c,area,s,sv,cv);
}
 

1140: 例题4-1 一元二次方程求根

题目描述

求一元二次方程ax2+bx+c=0的根,三个系数a, b, c由键盘输入,且a不能为0,但不保证b2-4ac>0。

程序中所涉及的变量均为double类型。

输入

以空格分隔的一元二次方程的三个系数,双精度double类型

输出

分行输出两个根如下(注意末尾的换行):

r1=第一个根

r2=第二个根

结果输出时,宽度占7位,其中小数部分2位。

如果方程无实根,输出一行如下信息(注意末尾的换行):

No real roots!

样例输入 Copy

1 2 3

样例输出 Copy

No real roots!
#include
#include
int main()
{
    double a,b,c,r1,r2,i;
    scanf(\"%lf%lf%lf\",&a,&b,&c);
    i=b*b-4*a*c;
    r1=(-b+sqrt(i))/(2*a);
    r2=(-b-sqrt(i))/(2*a);
    if(i<0)
        printf(\"No real roots!\\n\");
    else
        printf(\"r1=%7.2f\\nr2=%7.2f\\n\",r1,r2);
 
 
 
}

1141: 例题4-2 比较交换实数值

题目描述

从键盘输入2个实数,按照代数值由小到大的顺序输出这两个数。

输入

用空格分隔的两个实数。

输出

从小到大输出这两个实数,中间以空格来分隔,小数在前,大数在后。

小数点后保留2位小数。

末尾输出换行符。

样例输入 Copy

3.6 -2.3

样例输出 Copy

-2.30 3.60
#include
int main()
{
    double a,b;
    scanf(\"%lf%lf\",&a,&b);
    if(a>b)
        printf(\"%.2f %.2f\\n\",b,a);
    else
        printf(\"%.2f %.2f\\n\",a,b);
}

1142: 例题4-3 比较交换3个实数值,并按序输出

题目描述

从键盘输入3个实数a, b, c,通过比较交换,将最小值存储在变量a中,最大值存储在变量c中,中间值存储在变量b中,并按照从小到大的顺序输出这三个数a, b, c。

末尾输出换行。

输入

输入以空格分隔的三个实数

输出

按照从小到大的顺序输出这三个实数,中间以空格分隔,最小值在前,最大值在后。小数点后保留2位小数。

注意末尾的换行。

样例输入 Copy

3 7 1

样例输出 Copy

1.00 3.00 7.00
#include
int main()
{
    double a,b,c,t;
    scanf(\"%lf%lf%lf\",&a,&b,&c);
    if(a>b)
    {
        t=a;
        a=b;
        b=t;
    }
    if(a>c)
    {
        t=a;
        a=c;
        c=t;
    }
    if(b>c)
    {
        t=b;
        b=c;
        c=t;
    }
    printf(\"%.2f %.2f %.2f\\n\",a,b,c);
}

1143: 例题4-4 大写字母转换为小写字母

题目描述

输入一个字符,判断它是否为大写字母,如果是,将它转换为小写字母;如果不是,不转换。然后输出最后得到的字符。

输入

一个字符

输出

一个字符,末尾输出换行。

样例输入 Copy

A

样例输出 Copy

a
#include
int main()
{
    char c1,c2;
    scanf(\"%c\",&c1);
    if(c1>=\'A\'&&c1<=\'Z\')
    {
        c1+=32;
    }
    printf(\"%c\",c1);
}

1144: 例题4-5 符号函数

题目描述

给定如下函数:

 \"1110-1149:

输入x的值,要求输出相应的y值。

末尾输出换行符。

程序中涉及的变量请均定义为整型(int)

输入

键盘输入一整数。

输出

输出-1, 0, 1三者之一

样例输入 Copy

5

样例输出 Copy

1
#include
int main()
{
    int x;
    scanf(\"%d\",&x);
    if(x<0)
    printf(\"-1\");
   if(x==0)
    printf(\"0\");
   if(x>0)
   printf(\"1\");
   return 0;
}

1145: 例题4-6 成绩格式转换

题目描述

要求按照考试成绩的等级输出百分制成绩段,A等为85分以上,B等为70~84分,C等为60~69分,D等为60分以下。

成绩的等级由键盘输入(大小写的ABCD皆可)。

要求使用switch语句。

输入

以大小写字母ABCDabcd表示的成绩等级。

输出

输入等级所表示的百分制成绩段。单独占一行,末尾输出换行符。

输出结果应为如下几行之一:

85~100

70~84

60~69

0~60

样例输入 Copy

A

样例输出 Copy

85~100
#include
int main()
{
    char i;
    scanf(\"%c\",&i);
    if(i==\'a\'||i==\'A\')
        printf(\"85~100\");
     if(i==\'b\'||i==\'B\')
        printf(\"70~84\");
     if(i==\'c\'||i==\'C\')
        printf(\"60~69\");
     if(i==\'d\'||i==\'D\')
        printf(\"0~60\");
}

1146: 例题4-8 判断闰年

题目描述

输入一个年份,判断该年份是否为闰年。如果是输出该年份是一个闰年,否则输出该年份不是闰年的信息。

输入

年份

输出

输出结果的格式如下所示:

输入的年份 is a leap year!

输入的年份 is not a leap year!

注意末尾输出换行。

样例输入 Copy

1900

样例输出 Copy

1900 is not a leap year!
#include
int main()
{
    int a;
    scanf(\"%d\",&a);
    if(a%400==0||(a%4==0&&a%100!=0))
        printf(\"%d is a leap year!\",a);
    else
        printf(\"%d is not a leap year!\",a);
 
}

1147: 例题4-10 运费计算

题目描述

运输公司对用户计算运输费用。路程(km)越远(以s表示),每吨.千米的运费越低。

计算标准如下:

\"1110-1149:

设基本运费为p,货物重量为w,运输距离为s,折扣率为d,则总运费f的计算公式如下:

\"\"

输入

输入运输单价、重量和距离,以空格分隔。

数据类型定义为float类型。

输出

freight=计算出的总运费。

小数点后保留2位数字,末尾输出换行。

样例输入 Copy

100 20 300

样例输出 Copy

freight=588000.00
#include
int main()
{
   float p,w,s,d,f;
   scanf(\"%f%f%f\",&p,&w,&s);
   if(s<250)
    d=0;
   if(s<500&&s>=250)
    d=0.02;
    if(s<1000&&s>=500)
    d=0.05;
    if(s<1000&&s>=2000)
    d=0.08;
    if(s<2000&&s>=3000)
    d=0.10;
    if(s>=3000)
    d=0.15;
    f=p*w*s*(1-d);
    printf(\"freight=%.2f\\n\",f);
}

1148: 习题4-4 三个整数求最大值

题目描述

有3个整数a, b, c,由键盘输入,输出其中最大的数。

输入

以空格分割的三个整数。

输出

三个数中的最大值,末尾换行。

样例输入 Copy

1 3 2

样例输出 Copy

3
#include
int main()
{
  int a,b,c,t;
  scanf(\"%d %d %d\",&a,&b,&c);
  if(a>b){t=a,a=b,b=t;}
  if(b>c){t=b,b=c,c=t;}
  if(a>c){t=a,a=c,c=t;}
  printf(\"%d\\n\",t);
}

1149: 习题4-5 求平方根

题目描述

从键盘输入一个小于1000的正数,要求输出它的平方根(如平方根不是整数,则输出其整数部分)。

要求在输入数据后先对其进行检查是否为小于1000的正数。若不是,则输出一行错误信息,信息内容为:“invalid data!”

输入

一个小于1000的正数

输出

输入数据的平方根,仅输出整数部分。

注意末尾的换行。

样例输入 Copy

108.7

样例输出 Copy

10
#include
#include
int main()
{
  float a,b;
  scanf(\"%f\",&a);
  b=sqrt(a);
  if (a>1000)
    printf(\"invalid data!\\n\");
  else
    printf(\"%.0f\",b);
 
}

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号