第三章 最简单的C程序设计——顺序程序设计 例题

作者在 2011-09-29 17:17:56 发布以下内容
例题3.1
/*
时间:2011年9月29日15:42:23
题目:例3.1, 将华氏法测出的温度转换为摄氏法测出的温度
备注:转换公式为 c = 5/9*(f-32)
*/
# include <stdio.h>

int main()
{
    float f,c;
    
    printf("输入华氏温度\n");
    scanf("%f",&f);
//  c = (5.0/9)*(f-32);            //注意这里的5.0
    c = (f-32)*5/9;                //这样写也可以
    printf("华氏%f度 相当于 摄氏%f度\n", f,c);
    
    return 0;
}
/*
在VC++6.0中的输出结果为:
————————————
输入华氏温度
64
华氏64.000000度 相当于 摄氏17.777778度
Press any key to continue
————————————
*/
 
例题3.2
/*
时间:2011年9月29日16:36:27
题目:分别计算三种存款方式下的存款利息
备注:r1为活期存款年利率0.0036,r2为一年期定期存款的年利率0.0225,r3为半年期定期存款的年利率0.0198
*/
# include <stdio.h>
# include <math.h>
# define R1 0.0036            //指定用一个标识符代表一个常量,一般用大写,最好能见名知意
                            
//注意末尾没有分号

int main()
{
    float p0;
    int y;
    float p1,p2,p3;
    float r2=0.0225;                //有时会出警告 warning C4305: 'initializing' : truncation from 'const double' to 'float'
                                    
//这是因为visual c++将所有实型常量都作为双精度数来处理,初始化时将双精度数赋值给单精度变量系统会警告精度可能损失
                                    
//可以忽略警告继续进行连接
    
    const float r3 = 0.0198;        //定义常变量
    
    printf("请输入本金金额(元)\n");
    scanf("%f",&p0);
    printf("请输入存款几年\?\n");
    scanf("%d",&y);

    p1 = p0*pow((1+R1),y);
    p2 = p0*pow((1+r2),y);
    p3 = p0*pow((1+r3/2),2*y);

    printf("按\"活期\"方式存款,\t%f元的本金%d年之后将获得本息共计%f元\n",p0,y,p1);
    printf("按\"一年期定期\"方式存款,\t%f元的本金%d年之后将获得本息共计%f元\n",p0,y,p2);
    printf("按\"半年期定期\"方式存款,\t%f元的本金%d年之后将获得本息共计%f元\n",p0,y,p3);

    return 0;
}
/*
在VC++6.0中的输出结果为:
————————————
请输入本金金额(元)
1000
请输入存款几年?
1
按"活期"方式存款,       1000.000000元的本金1年之后将获得本息共计1003.599976元
按"一年期定期"方式存款, 1000.000000元的本金1年之后将获得本息共计1022.500000元
按"半年期定期"方式存款, 1000.000000元的本金1年之后将获得本息共计1019.898010元
Press any key to continue
————————————
*/
 
例题3.3
/*
时间:2011年10月8日16:33:28
题目:例题3.3 给定一个大写字母要求用小写字母输出
*/
# include <stdio.h>

int main()
{
    char c1,c2;

    c1 = 'A';
    printf("%c,%d\n",c1,c1);    //字符数据是以ASCII码存储在内存的,形式与整数的形式相同,所以字符型数据与其他算数型数据之间可以互相赋值和运算
    c2 = c1+32;        //把字符变量c1的值(是字符'A'的ASCII代码),与整数32相加
    printf("%c,%d\n",c2,c2);


    
    return 0;
}
/*
在VC++6.0中的输出结果为:
————————————
A,65
a,97
Press any key to continue
————————————
*/
 
例题3.4
/*
时间:2011年10月9日9:49:11
题目:给出三角形三边长,求出三角形面积
备注:海伦公式 area=sqrt(s*(s-a)*(s-b)*(s-c)),其中s=(a+b+c)/2
*/
# include <stdio.h>
# include <math.h>

int main()
{
    double a,b,c;                                //定义变量
    double s,area;
    
    do
    {
        printf("请输入三角形三条边的长度:\n");    //输入三角形三条边长
        printf("a = ");
        scanf("%lf",&a);
        printf("b = ");
        scanf("%lf",&b);
        printf("c = ");
        scanf("%lf",&c);
        
        if (a+b>c && b+c>a && a+c>b)            //判断输入是否满足三角形条件
        {
            break;
        }
        else
        {
            printf("输入错误\n");
        }
    }
    while (1);
    
    s = (a+b+c)/2;                                //赋值计算
    area = sqrt(s*(s-a)*(s-b)*(s-c));
    
    printf("三角形的面积为 area = %lf\n",area);    //输出结果
    
    return 0;
}
/*
在VC++6.0中的输出结果为:
————————————
请输入三角形三条边的长度:
a = 1
b = 2
c = 3
输入错误
请输入三角形三条边的长度:
a = 3
b = 4
c = 5
三角形的面积为 area = 6.000000
Press any key to continue
————————————
*/

 
《C程序设计》学习 | 阅读 1765 次
文章评论,共0条
游客请输入验证码
最新评论