实验3--最简单的C程序设计——顺序程序设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
①输入以下程序:
#include
int main()
{int a,b; //定义整形a,b
float d,e; //定义单精度浮点d,e char c1,c2; //定义字符c1,c2
double f,g; //定义双精度字符f,g long m,n; //定义长整形字符m,n unsigned int p,q; //定义无符号整形p,q a=61;b=62; //对a,b赋值61,62
c1='a';c2='b'; //对c1,c2赋值a,b d=3.56;e=-6.87; //对d,e赋值
f=3157.890121;g=0.123456789; //对f,g赋值
m=50000;n=-60000; //对m,n赋值
p=32768;q=40000; //对p,q赋值
printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n",a,b,c1,c2,d,e); //输出a,b,c1,c2,d,e
printf("f=%1.56f,g=%15.12f\nm=%ld,n=%ld\np=%u,q=%u\n",f,g,m,n,p,q); //按格式化输出f,g,m,n,使f小数点后保留56位,g的有效字符位15且保留12位小数
}
②运行此程序并分析结果。
③在此基础上,将程序第10—14行改为:
c1=a;c2=b;
f=3157.890121;g=0.123456789;
d=f;e=g;
p=a=m=50000;q=b=n=-60000;
运行程序,分析结果。
④用sizeof运算符分别检测程序中各类型的数据占多少字节。例如,int型
变量a的字节数为sizeof(a)或sizeof(int),用printf函数语句输出各类型变量的长度(字节数)。
sizeof(int) = 4
sizeof(float) = 4;
sizeof(double) = 8;
sizeof(char) = 1;
char *p;
sizeof(p) = 4;
sizeof(long) = 4;
sizeof(unsigned int) = 4;
⑵设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。编程序,用scanf输入数据,输出计算结果。输出时要有文字说明,取小数点后面两位数。
解:程序如下:
#include
int main()
{float h,r,l,s,sq,vq,vz; //定义h,r,l,s,sq,vq,vz
float pi=3.1415926; // 设pi=3.1415926
printf("请输入圆半径r,圆柱高h:"); //输出:请输入圆半径r,圆柱高h:scanf("%f,%f",&r,&h); //输入r,h
l=2*r*pi; //给l赋值为2*r*pi
s=r*r*pi; //给s赋值为r*r*pi
sq=4*pi*r*r; //给sq赋值为4*pi*r*r
vq=4.0/3.0*pi*r*r*r; //给vq赋值为4.0/3.0*pi*r*r*r vz=pi*r*r*h; //给vz赋值为pi*r*r*h
printf("圆周长为: l=%6.2f\n",l); //输出l有效值6字符保留2位小数printf("圆面积为: s=%6.2f\n",s); //输出s效值6字符保留2位小数printf("圆球的表面积为: sq=%6.2f\n",sq); //输出sq格式同上
printf("圆球体积为: vq=%6.2f\n",vq); //输出vq格式同上
printf("圆柱体积为: vz=%6.2f\n",vz); //输出vz格式同上
return 0;
}
⑶计算存款利息
有1000元,想存5年,可按以下5种方法存:
①一次存5年期。
②先存2年期,到期后再将本息再存3年期。
③先存3年期,到期后再将本息再存2年期。
④存1年期,到期后将本息再存1年期,连续存5次。
⑤存活期存款,活期利息每一季度结算一次。
存款利息:1年定期利息4.14%;
2年定期4.68%;
3年定期5.4%;
5年定期5.85%;
活期利息每季度0.72%
如果r为年利率,n为存款年数,则计算本息和的公式为:
1年期本息和:p=1000*(1+r);
n年期本息和: p=1000*(1+n*r);
存n次1年期的本息和:p=1000*(1+r)n;
活期存款本息和:p=1000*(1+r/4)4n。
# include
# include
int main()
{float r5,r3,r2,r1,r0,p,p1,p2,p3,p4,p5;//定义变量
p=1000; //给p赋值1000
r5=0.0585; //给r5赋值0.585
r3=0.054; //给r3赋值0.054
r2=0.0468; //给r2赋值0.0468
r1=0.0414; //给r1赋值0.0414
r0=0.0072; //给r0赋值0.0072
p1=p*((1+r5)*5); //给p1赋值为p*((1+r5)*5)
p2=p*(1+2*r2)*(1+3*r3); //给p2赋值为p*(1+2*r2)*(1+3*r3) p3=p*(1+3*r3)*(1+2*r2); //给p3赋值为p*(1+3*r3)*(1+2*r2) p4=p*pow(1+r1,5); //给p4赋值为p的(1+r1,5)次方
p5=p*pow(1+r0/4,4*5); //给p5赋值为p的(1+r0/4,4*5)次方printf("p1=%f\n",p1); //输出p1
printf("p2=%f\n",p2); //输出p2
printf("p3=%f\n",p3); //输出p3
printf("p4=%f\n",p4); //输出p4
printf("p5=%f\n",p5); //输出p5
return 0;
}