第3章顺序结构和输入输出
一、 实验目的

1.  熟练掌握顺序结构的程序设计方法。

2.  理解并运用各种表达式。

3.  熟练掌握输入、输出函数的使用及常用格式字符的使用方法。

二、 实验内容

1.  程序改错: 输入长方形的边长,计算并输出长方形的面积。



#include<stdio.h>

int main()

{

 float  a,b;

 printf("请输入长和宽a b: ");

/************found*********/

 scanf("%f %f", a, b);

 printf("面积=%f\n", a*b);

 return 0;

}






【分析】

(1) 掌握输入函数scanf()的用法。

(2) “found”的下一行程序应该为。修改后重新运行程序,运行结果为。


2.  练习getchar()和putchar()的使用。



#include<stdio.h>

int main()

{

 char ch1='\102', ch2='\x44', ch3='a',ch4='\n',ch5;

 ch5=getchar();

 putchar(ch1); putchar('\n');

 putchar(ch2); putchar('\n');

 putchar(ch3); putchar(ch4);

 putchar(ch5);putchar('\n');

 putchar('A'); putchar('\n');

 return 0;

}






【分析】

(1) 掌握常用的转义字符的用法。

(2) 如果输入“a”,写出程序的运行结果。



3.  运行下列程序,并给出其输出结果。



#include<stdio.h>

int main()







{

 int a=5,b=7;

 float x=67.8564;

 char c='A';

 printf("a=%3d,b=%3d\n",a,b);

 printf("a=%-3d,b=%-3d\n",a,b);

 printf("x=%8.2f,x=%4f,x=%.2f,x=%e\n",x,x,x,x);

 printf("%c,%d,%o,%x\n",c,c,c,c);

 return 0;

}






【分析】

(1) “%3d”中“3”的作用是。

(2) “%3d”和“%-3d”的区别是。

(3) 掌握“%m.nf”的输出形式。

(4) 写出程序的运行结果。



4.  下列程序的功能是输入一个华氏温度,计算并输出对应的摄氏温度。



#include <stdio.h>

int main() 

{

 float c,f;

 printf("请输入一个华氏温度: ");

 scanf("%f",&f);

 c=5/9*(f-32);

 printf("华氏温度F=%.2f\n",f);

 printf("摄氏温度c=%.2f\n",c);

 return 0;

}






【分析】

(1) 上机前分析运行结果: 



(2) 实际上机运行结果: 



(3) 分析程序的输出结果是否正确。如果不正确,应该如何修改程序?



5.  调试运行下列程序,并分析其功能。



#include <stdio.h>

int main() 

{

 int a=123,b=234;

 printf("a=%d,b=%d\n",a,b);

 a=a+b;

 b=a-b;

 a=a-b;

 printf("a=%d,b=%d\n",a,b);	

 return 0;

}






【分析】

(1) 写出程序的运行结果。



(2) 根据运行结果说明程序的功能。



(3) 编写程序: 用另一种算法实现该功能。



6.  程序填空: 从键盘输入圆柱体的半径r和高h,计算并输出其底面积s和体积v。



#include <stdio.h>

int main() 

{

 float pi=3.1415926;

 float r,h,s,v;

 printf("Please input r,h:");

 scanf("%f, ",&r, );

 s=;

 v=;

 printf("area=,volume=  \n",s,v);

 return 0;

}





【分析】

写出程序的运行结果。



7.  编写程序: 输出任意一个输入字符的ASCII码(提示: 接收一个字符变量,以整型输出该变量)。



8.  编写程序: 从键盘任意输入两个整数,将其交换次序后输出。



9.  编写程序: 从键盘任意输入一个大写字母,输出字母表中位于它之前的那个字母、该字母本身和它之后的那个字母,要求用getchar()和putchar()实现。



10.  编写程序: 从键盘任意输入一个小写字母,分别将它以八进制、十进制、十六进制和字符格式输出。



11.  编写程序: 输入三个整数a、b、c,交换这几个整数的值,把a原来的值给b,b原来的值给c,c原来的值给a,输出交换后a、b、c的值。



12.  编写程序: 任意一个两位正整数进行平方运算后,取其百位数和十位数,构成一个新的两位整数并输出。



13.  编写程序: 将Old译成密码,密码规则是将每个字母替换为其在字母表中的后面第4个字母。例如,字母O的后面第4个字母是S,则用S代替O。因此Old应译为Sph。