第3章 最简单的C程序设计——顺序程序设计
- 一·例题
- 例3.1 有人用温度计测量出用华氏法表示的温度(如 64 °F),今要求把它转换为以摄氏度表示的温度(如 17.8°C)。
- 例3.2 计算存款利息。有1000元,想存一年。有3种方法可选:(1)活期,年利率为r1;(2)一年期定期,年利率为r2;(3)存两次半年定期,年利率为r3。请分别计算出一年后按3种方法所得到的本息和。
- 例3.3 给定一个大写字母,要求用小写字母输出。
- 例3.4 给出三角形的三边长,求三角形的面积。
- 例3.5 求ax^2^+bx+c=0方程的根。a,b,c由键盘输入,设b^2^-4ac>0。
- 例3.6 用%f输出实数,只能得到六位小数。
- 例3.7 float型数据的有效位数。
- 例3.8 先后输出BOY三个字符。
- 例3.9 从键盘输入BOY3个字符,然后把它们输出到屏幕。
- 例3.10 改写例3.3程序,使之可以适用于任何大写字母。从键盘输入一个大写字母,在显示屏上显示对应的小写字母。
- 二·习题
- 1.假如我国国民生产总值的年增长率为7%,计算10年后我国国民生产总值与现在相比增长多少百分比。计算公式为
- 2.请编程序将“China”译成密码,密码规律是:用原来的字母后面第4个字母代替原来的字母。例如,字母“A”后面第4个字母是“E”,用“E”代替“A”。因此,“China”应译为“Glmre”。请编一程序,用赋初值的方法使c1,c2,c3,c4,c5分别变为'G','l','m','r','e'。分别用putchar函数和printf函数输出这5个字符。
- 3.设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字。请编程序。
一·例题
例3.1 有人用温度计测量出用华氏法表示的温度(如 64 °F),今要求把它转换为以摄氏度表示的温度(如 17.8°C)。
#include<stdio.h>
int main()
{
float f,c;
f=64;
c=(5.0/9)*(f-32);
printf("f=%f\nc=%f\n",f,c);
return 0;
}
运行结果如下:
例3.2 计算存款利息。有1000元,想存一年。有3种方法可选:(1)活期,年利率为r1;(2)一年期定期,年利率为r2;(3)存两次半年定期,年利率为r3。请分别计算出一年后按3种方法所得到的本息和。
#include<stdio.h>
int main()
{
float p0=1000,r1=0.0036,r2=0.0225,r3=0.0198,p1,p2,p3;
p1=p0*(1+r1);
p2=p0*(1+r2);
p3=p0*(1+r3/2)*(1+r3/2);
printf("p1=%f\np2=%f\np3=%f\n",p1,p2,p3);
return 0;
}
运行结果如下:
例3.3 给定一个大写字母,要求用小写字母输出。
#include<stdio.h>
int main()
{
char c1,c2;
c1='A';
c2=c1+32;
printf("%c\n",c2);
printf("%d\n",c2);
return 0;
}
运行结果如下:
例3.4 给出三角形的三边长,求三角形的面积。
#include<stdio.h>
#include<math.h>
int main()
{
double a,b,c,s,area;
a=3.67;
b=5.43;
c=6.21;
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("a=%f\tb=%f\tc=%f\n",a,b,c);
printf("area=%f\n",area);
return 0;
}
运行结果如下:
例3.5 求ax2+bx+c=0方程的根。a,b,c由键盘输入,设b2-4ac>0。
#include<stdio.h>
#include<math.h>
int main()
{
double a,b,c,disc,p,q,x1,x2;
scanf("%lf%lf%lf",&a,&b,&c);
disc=b*b-4*a*c;
p=-b/(2.0*a);
q=sqrt(disc)/(2.0*a);
x1=p+q;
x2=p-q;
printf("x1=%7.2f\nx2=%7.2f\n",x1,x2);
return 0;
}
运行结果如下:
例3.6 用%f输出实数,只能得到六位小数。
#include<stdio.h>
int main()
{
double a=1.0;
printf("%f\n",a/3);
return 0;
}
运行结果如下:
例3.7 float型数据的有效位数。
#include<stdio.h>
int main()
{
float a;
a=10000/3.0;
printf("%f\n",a);
return 0;
}
运行结果如下:
例3.8 先后输出BOY三个字符。
#include<stdio.h>
int main()
{
char a='B',b='O',c='Y';
putchar(a);
putchar(b);
putchar(c);
putchar('\n');
return 0;
}
运行结果如下:
扫描二维码关注公众号,回复:
5278303 查看本文章
例3.9 从键盘输入BOY3个字符,然后把它们输出到屏幕。
#include<stdio.h>
int main()
{
char a,b,c;
a=getchar();
b=getchar();
c=getchar();
putchar(a);
putchar(b);
putchar(c);
putchar('\n');
return 0;
}
运行结果如下:
例3.10 改写例3.3程序,使之可以适用于任何大写字母。从键盘输入一个大写字母,在显示屏上显示对应的小写字母。
#include<stdio.h>
int main()
{
char c1,c2;
c1=getchar();
c2=c1+32;
putchar(c2);
putchar('\n');
return 0;
}
运行结果如下:
二·习题
1.假如我国国民生产总值的年增长率为7%,计算10年后我国国民生产总值与现在相比增长多少百分比。计算公式为
p=(1+r)n
r为年增长率,n为年数,p为与现在相比的倍数。
#include<stdio.h>
#include<math.h>
int main()
{
double r,p;
int n;
scanf("%lf%d",&r,&n);
p=pow(1+r,n);
printf("增长了%f\n",p-1);
return 0;
}
运行结果如下:
2.请编程序将“China”译成密码,密码规律是:用原来的字母后面第4个字母代替原来的字母。例如,字母“A”后面第4个字母是“E”,用“E”代替“A”。因此,“China”应译为“Glmre”。请编一程序,用赋初值的方法使c1,c2,c3,c4,c5分别变为’G’,‘l’,‘m’,‘r’,‘e’。分别用putchar函数和printf函数输出这5个字符。
#include<stdio.h>
int main()
{
char c1='C',c2='h',c3='i',c4='n',c5='a';
c1=c1+4;
c2=c2+4;
c3=c3+4;
c4=c4+4;
c5=c5+4;
putchar(c1);
putchar(c2);
putchar(c3);
putchar(c4);
putchar(c5);
putchar('\n');
printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5);
return 0;
}
运行结果如下:
3.设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字。请编程序。
#include<stdio.h>
#define PI 3.14
int main()
{
double r,h,C,S1,S2,V1,V2;
scanf("%lf%lf",&r,&h);
C=2*PI*r;
S1=PI*r*r;
S2=4*PI*r*r;
V1=(4.0/3)*PI*r*r*r;
V2=PI*r*r*h;
printf("圆周长为:%7.2f\n",C);
printf("圆面积为:%7.2f\n",S1);
printf("圆球表面积为:%7.2f\n",S2);
printf("圆球体积为:%7.2f\n",V1);
printf("圆柱体积为:%7.2f\n",V2);
return 0;
}
运行结果如下: