实验3 顺序结构程序设计
一、实验目的
1.掌握scanf()、printf()以及其他常用输入、输出函数的使用。 2.掌握格式控制符的使用。
3.掌握顺序结构程序设计的方法。
二、实验内容
1.改错题
(1)下列程序的功能为:输入一个华氏温度,要求输出摄氏温度。公式为:C= 5(F?32),
9输出取2位小数。纠正程序中存在的错误,以实现其功能。程序以文件名sy3_1.c保存。
#include
#include
main() {
{ float c,f;
floatc,f; printf(\请输入一个华氏温度:\\n\;
printf(\请输入一个华氏温度:\\n\scanf(\,f);
scanf(\c=(5/9)*(f-32);
c=(5.0/9)*(f-32); printf(\摄氏温度为:%5.2f\\n\;
printf(\摄氏温度为:%5.2f\\n\} (2)下列程序的功能为:按下列公式计算并输出x的值。其中a和b的值由键盘输入。纠正程序中存在的错误,以实现其功能。程序以文件名sy3_2.c保存。
x?2ab 2(a?b)#include
main() main()
{ inta,b; {inta,b;
float x; float x;
scanf(\scanf(\
x=2.0*a*b/((a+b)*(a+b)); x=2ab/(a+b)(a+b);
printf(\ printf(\
} }
(3)下列程序的功能为:从键盘输入一个小写字母,要求改用大写字母输出。请纠正程序中存在的错误,使程序实现其功能,程序以文件名sy3_3.c保存。
#include
char c1,c2;
c1=getchar; c1=getchar();/* 从键盘输入一个小写字母 */
printf(\ /* 输出该小写字母及其ASCII码值 */ c2=c1+26; c2=c1-32;/* 转换为大写字母 */
printf(\ /* 输出大写字母及其ASCII码值 */ }
2.程序填空题 (1)下列程序的功能为:按给定格式输入数据,按要求格式输出结果。补充完善程序,以实现其功能。程序以文件名sy3_4.c保存。
输入形式enter x,y:2 3.4 输出形式x+y=5.4
#include
int x; float y;
printf(\ \;
scanf(\printf(\}
(2) 下列程序的功能为:设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf输入数据r、h,输出计算结果,输出时要求有文字说明,取小数点后2位数字。(周长l=2?r,圆面积s=?r,圆球表面积sq=4?r,圆球体积vq=
22432?r;圆柱体积vz=?hr),请补充完善程序,以实现其功能。程序以文件名sy3_5.c保存。 3#include
float pi,h,r,l,s,sq,vq,vz; pi=3.1415926; printf(\请输入圆半径r,圆柱高h:\\n\; ; l=; s=; sq=; vq=; vz=;
printf(\圆周长为:); printf(\圆面积为:); printf(\圆球表面积为:); printf(\圆球体积为:); printf(\圆柱体积为:);
}
(3) 下列程序的功能为:通过键盘输入两个整数,分别存入变量x、y中,当x #include #include { int x,y,t; printf(\请输入x,y:\\n\; scanf(\; if (x printf(\交换后的x:%d y:%d \\n\,x,y); } 3.编程题 (1)编写一个程序实现如下功能:从键盘输入3个字符,然后在屏幕上分3行输出该3个字符。程序以文件名sy3_7.c保存。 #include char c1,c2,c3; c1=getchar(); c2=getchar(); c3=getchar(); putchar(c1); putchar('\\n'); putchar(c2); putchar('\\n'); putchar(c3); putchar('\\n'); } (2)编写一个程序实现如下功能:输入一元二次方程ax2+bx+c=0的系数a、b、c,求方程的根。要求:运行该程序时,输入a、b、c的值,分别使b2-4ac的值大于、等于和小于零,观察并分析运行结果。程序以文件名sy3_8.c保存。求根公式如下: ???± ??2?4??????= 2??#include {float a,b,c,disc,x1,x2,p,q; scanf(\disc=b*b-4*a*c; p=-b/(2.0*a); q=sqrt(disc)/(2.0*a); x1=p+q; x2=p-q; printf(\}