第3章(第四版)C语言程序设计练习

一、例题

1.温度转换(64ºF→17.8ºC)

#include<stdio.h>
int main()
{
    float f = 0;
    float c = 0;
    scanf_s("%f", &f);
    printf("摄氏度为:%f\n华氏度为:%f\n", (5.0 / 9) * (f - 32.0),f);
}

2.1000存储一年

(1)活期,年利率r1

(2)定期,年利率r2

(3)两次半年定期,年利率r3

求本息和

#include<stdio.h>
int main()
{
    float r1 = 0;
    float r2 = 0;
    float r3 = 0;
    scanf_s("%f %f %f", &r1, &r2, &r3);
    printf("活期%f\n", 1000 * (r1+1));
    printf("活期%f\n", 1000 * (r2 + 1));
    printf("活期%f\n", 1000 * (r3 / 2.0 + 1)*(r3 / 2.0 + 1));
    return 0;
}

3.输入大写字母,输出小写字母

#include<stdio.h>
int main()
{
    char c1 = 0;
    printf("请输入大写字母\n");
    scanf_s("%c", &c1);
    printf("输出小写字母为:%c\n输入大写字母为:%c\n", c1 + 32,c1);
    return 0;
}

4.通过三角形边长,求三角形面积

area=√s(s-a)(s-b)(s-c)

s=(a+b+c)/2

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

5.求ax2+bx+c=0方程的根,设b2-4ac>0

#include<stdio.h>
#include<math.h>
int main()
{
    double a, b, c;
    double x1, x2,x ;
    printf("请输入a,b,c:\n");
    scanf_s("%lf %lf %lf", &a, &b, &c);
    if (b * b - 4 * a * c > 0)
    {
        x1 = (-b + sqrt(b * b - 4 * a * c)) / (2.0 * a);
        x2 = (-b - sqrt(b * b - 4 * a * c)) / (2.0 * a);
        printf("x1=%lfx2=%lf", x1, x2);
    }
    else if (b * b - 4 * a * c == 0)
    {
        x= -b / (2.0 * a);
        printf("x=%lf", x);
    }
    else
    {
        printf("不存在根");
    }
    return 0;
}

6.输入BOY,输出BOY

#include<stdio.h>
int main()
{
    char a, b, c;
    a = getchar();
    b = getchar();
    c = getchar();
    putchar(a);
    putchar(b);
    putchar(c);
    return 0;
}

二、习题

1.年增长率为9%,10年后增长多少百分比?

p = ( 1 + r ) n

r:年增长率  n:年 p:现在相比的倍速

#include<stdio.h>
#include<math.h>
int main()
{
    double r, n, p;
    printf("请输入年增长率(r),年(n)\n");
    scanf_s("%lf,%lf", &r, &n);
    p = pow(1 + r, n);
    printf("现在相比的倍速(p):%lf\n", p);
    return 0;

}

2.

#include <stdio.h>
#include <math.h>
int main()
{
    float r5, r3, r2, r1, r0, p, p1, p2, p3, p4, p5;
    //double r5, r3, r2, r1, r0, p, p1, p2, p3, p4, p5;
    p = 1000;
    r5 = 0.0585;
    r3 = 0.054;
    r2 = 0.0468;
    r1 = 0.0414;
    r0 = 0.0072;
    p1 = p * (1 + r5 * 5);  
    p2 = p * (1 + 2 * r2) * (1 + 3 * r3);
    p3 = p * (1 + 3 * r3) * (1 + 2 * r2);
    p4 = p * pow(1.0 + r1, 5);         
    p5 = p * pow(1.0 + r0 / 4, 4 * 5);    
    printf("一次存5年期p1:=%f\n", p1);   
    //printf("p1=%10.2f\n", p1);
    printf("先存2年期,后将本息再存3年期p2:=%f\n", p2);      
    printf("先存3年期,后将本息再存2年期p3:=%f\n", p3);     
    printf("存1年期5次p4:=%f\n", p4);    
    printf("存活期p5:=%f\n", p5);     
    return 0;
}

3.

#include <stdio.h>
#include <math.h>
int main()
{
    float d = 300000, p = 6000, r = 0.01, m;
    m = log10(p / (p - d * r)) / log10(1 + r);
    printf("m=%6.2f\n", m);//m= 69.66
    return 0;
}

 

4.(1)

#include <stdio.h>int main()
{
    char c1, c2;
    c1 = 97;
    c2 = 98;
    printf("c1=%c,c2=%c\n", c1, c2);// c1 = a, c2 = b
    printf("c1=%d,c2=%d\n", c1, c2);//c1 = 97,c2 = 98
    return 0;
}

(2)

#include <stdio.h>int main()
{
    char c1, c2;
    c1 = 197;
    c2 = 198;
    printf("c1=%c,c2=%c\n", c1, c2); //c1 = ? c2 = ?(0~127,有意义,其他是乱码)
    printf("c1=%d,c2=%d\n", c1, c2);//c1=-59,c2=-58
    return 0;
}

(3)

#include <stdio.h>int main()
{
    int c1, c2;
    c1 = 97;
    c2 = 98;
    printf("c1=%c,c2=%c\n", c1, c2); //c1 =a c2 =b
    printf("c1=%d,c2=%d\n", c1, c2);//c1=97,c2=98
    return 0;
}
#include <stdio.h>int main()
{
    int c1, c2;
    c1 = 197;
    c2 = 198;
    printf("c1=%c,c2=%c\n", c1, c2); //c1 =? c2 =?
    printf("c1=%d,c2=%d\n", c1, c2);//c1=197,c2=198
    return 0;
}

5.

#include <stdio.h>
int main()
{
    int a, b;
    float x, y;
    char c1, c2;
    scanf_s("%d%d", &a, &b);
    scanf_s("%f %e", &x, &y);
    scanf_s("%c %c", &c1, &c2);
    printf("a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%c\n", a, b, x, y, c1, c2);
    return 0;
}

6.

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
    char c1 = 0;
    char c2 = 0;
    char c3 = 0;
    char c4 = 0;
    char c5 = 0;
    scanf("%c %c %c %c %c", &c1, &c2, &c3, &c4, &c5);
    c1 = c1 + 4;
    c2 = c2 + 4;
    c3 = c3 + 4;
    c4 = c4 + 4;
    c5 = c5 + 4;
    printf("%c%c%c%c%c\n", c1, c2, c3, c4, c5);
    return 0;
}

7.

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
    float h, r, l, s, sq, vq, vz;
    float pi = 3.141526;
    printf("请输入圆半径r,圆柱高h∶");
    scanf("%f,%f", &r, &h);         
    l = 2 * pi * r;                       
    s = r * r * pi;                    
    sq = 4 * pi * r * r;                     
    vq = 3.0 / 4.0 * pi * r * r * r;             
    vz = pi * r * r * h;                     
    printf("圆周长为:       l=%6.2f\n", l);
    printf("圆面积为:       s=%6.2f\n", s);
    printf("圆球表面积为:   sq=%6.2f\n", sq);
    printf("圆球体积为:     v=%6.2f\n", vq);
    printf("圆柱体积为:     vz=%6.2f\n", vz);
    return 0;
}

8.

(1)

#include <stdio.h>
int main()
{
    int c1, c2; 
    //char c1, c2; 
    printf("请输入两个字符c1,c2:");
    c1 = getchar();
    c2 = getchar();
    printf("用putchar语句输出结果为:\n");
    putchar(c1);//a
    putchar(c2);//b
    printf("\n");
    printf("用printf语句输出结果为:\n");
    printf("%c,%c\n", c1, c2);//a,b
    return 0;
}

(2)

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
    int c1, c2;                      
    printf("请输入两个整数c1,c2:");
    scanf("%d,%d", &c1, &c2);
    printf("按字符输出结果:\n");
    printf("%c,%c\n", c1, c2);
    printf("按ASCII码输出结果为:\n");
    printf("%d,%d\n", c1, c2);
    return 0;
}

 

posted @ 2021-11-14 17:12  mljrm  阅读(145)  评论(0)    收藏  举报