湖南中医药大学OJ—1120到1129


1120: 习题2-8 求闰年
1121: 例题3-1 温度转换(1)
1122: 例题3-1 温度转换(2)
1123: 例题3-2 计算存款利息
1124: 例题3-3 大小写字母转换(1)
1125: 例题3-3 大小写字母转换(2)
1126: 例题3-4 求三角形的面积(1)
1127: 例题3-4 求三角形面积(2)
1128: 例题3-5 求一元二次方程的根
1129: 例题3-9 字符输入输出

1120: 习题2-8 求闰年

题目描述
输出1900至2000年(包含1900年和2000年)间的所有闰年。
输入:

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

样例输入 Copy

样例输出 Copy
1904
1908
1912
1916
1920
1924
1928
1932
1936
1940
1944
1948
1952
1956
1960
1964
1968
1972
1976
1980
1984
1988
1992
1996
2000

之前的题解里面有提到闰年的判断,这里只是加了个循环判断

#include<stdio.h>
int main()
{
    
    
    int i;
    for(i=1900;i<=2000;i++)
    {
    
    
        if(i%4==0&&i%100!=0||i%400==0)
        {
    
    
            printf("%d\n",i);
        }
    }
    return 0;
}

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

题目描述
有人用温度计测量出用华氏法表示的温度64oF,需要将它转换为以摄氏法表示的温度。
输入
无,变量请定义成单精度型,初值在程序中以赋值的方式给出。
输出
F=华氏度数
C=摄氏度数
分行输出华氏度数和摄氏度数,小数点后保留默认精度。不要忘了末尾的换行。

样例输入

样例输出
F=64.000000
C=17.777779

关于华氏度和摄氏度的转化方程下面一道题有,但是,换算出来的结果好像通过不了OJ(很久的记忆了)

#include<stdio.h>
int main(){
    
    
    float F=64.000000;
    float C=17.777779;
    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 <stdio.h>  
int main()
{
    
    
    float a;
    float b;
    scanf("%f",&a);
    b = ( 5.0 / 9 ) * ( a - 32 );
    printf("F=%f\n",a);
    printf("C=%f\n",b);
    return 0;
}

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

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

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

样例输入

样例输出
1003.599976 1022.500061 1019.897949

简单的数学题,注意类型的转化就好

#include<stdio.h>
int main()
{
    
    
    float x=1000,r1=0.0036,r2=0.0225,r3=0.0198,a,b,c;
    a=x*(1+r1);
    b=x*(1+r2);
    c=x*(1+r3/2)*(1+r3/2);
    printf("%f %f %f\n",a,b,c);
    return 0;
}

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

题目描述
给定一个大写字母A,要求用小写字母输出,同时输出该小写字母对应的ASCII码。
输入
无,初值以赋值的方式给出。
输出
第一行输出小写字母,第二行输出该小写字母对应的ASCII码。注意末尾的换行。

样例输入

样例输出
a
97

#include<stdio.h>
int main()
{
    
    
    int A='A',a;//这里int类型赋值为一个字符,int类型会自动存储它的ASCLL码
    a=A+32;//增加的是ASCLL码
    printf("%c\n%d\n",a,a);//输出的时候用c%输出字符,达到转换效果
    return 0;
}

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

题目描述
从键盘上输入一个大写字母,要求用小写字母输出,同时输出该小写字母对应的ASCII码。
输入:
大写字母
输出:
第一行输出小写字母,第二行输出小写字母对应的ASCII码,注意最后的换行符。

样例输入
A
样例输出
a
97

#include<stdio.h>
int main()
{
    
    
    int a;
    char A;
    scanf("%c",&A);
    a=A+32;//分析和上题类似,也是利用ASCLL来转换
    printf("%c\n%d\n",a,a);
    return 0;
}

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

题目描述
给出三角形的三边长,求三角形面积。
输入:
无,三角形边长以赋值的方式给定,三边长分别为3.67,5.43,6.21
输出:
area=计算出的面积,别忘了末尾的换行。

样例输入

样例输出
area=9.903431

#include<stdio.h>
#include<math.h>
int main()
{
    
    
    double a=3.67,b=5.43,c=6.21;
    double area,p;
    p=(a+b+c)/2;//这个我记得是用什么海拉还是海伦公式来着,就套用公式就好
    area=sqrt(p*(p-a)*(p-b)*(p-c));
    printf("area=%lf\n",area);
    return 0;
}

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

题目描述
从键盘上输入三角形的三个边长,求三角形的面积
输入:
以空格分隔的三个三角形边长。
输出:
area=计算出的面积,注意末尾的换行。

样例输入
3.67 5.43 6.21
样例输出
area=9.903431

#include<stdio.h> 
#include<math.h>
int main() 
{
    
    
   double a,b,c,p ,s; 
   scanf("%lf %lf %lf",&a,&b,&c); 
   p=(a+b+c)*1.0/2; 
   s=sqrt(p*(p-a)*(p-b)*(p-c));//海伦公式 
   printf("area=%lf\n",s); 
   return 0; 
 }

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

和之前的1119类似,注意输出要求

#include<stdio.h>
#include<math.h>
int main()
{
    
    
    double a,b,c,r1,r2,x;
    scanf("%lf %lf %lf",&a,&b,&c);
    x=(b*b)-(4*a*c);
    r1=-(b-sqrt(x))/(2*a);
    r2=-(b+sqrt(x))/(2*a);
    printf("r1=%7.2lf\nr2=%7.2lf\n",r1,r2);
    return 0;
}

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

题目描述
从键盘输入三个字符BOY,然后把他们输出到屏幕上
输入:
BOY三个字符,中间无分隔符
输出:
BOY,注意末尾的换行

样例输入 Copy
BOY
样例输出 Copy
BOY

把输入的字符再遍历输出就行了

#include<stdio.h>
#include<string.h>
int main()
{
    
    
    int i;
    char s[3];
    for(i=0;i<3;i++)
    {
    
    
    	scanf("%c",&s[i]);
    	printf("%c",s[i]);
    }
    printf("\n");
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_43337254/article/details/109537669
今日推荐