发布时间 : 星期五 文章C语言复习整理版更新完毕开始阅读8a480f09ba1aa8114431d9a6
上机实验一 C程序的运行环境和运行C程序的方法
一. 目的要求
1. 了解在计算机系统上编辑、编译、连接和运行C程序的步骤。 2. 在运行和调试程序中观察系统提示,改正编译错误或连接错误。 3. 了解C源程序结构及书写格式,了解C程序的各个组成成分术语。 4. 记录运行结果,分析结果。
二. 实验内容
思考问题:什么是源程序?什么是编译程序?C语言源程序结构是怎样的?C语言源程序的书写格式怎样?指出课本程序中哪些是注释、预处理命令、语句、声明语句、可执行语句、函数定义、函数调用、操作符、关键词、标识符、main()函数等。
1. 熟悉VC语言编程界面。
2. 输入下列源程序,进行修改、编译、连接和运行。应了解是用什么命令进行编译、连接和运行的。运行的结果是什么?
程序:main ( )
{
printf(\}
运行结果是:
3. 输入下列源程序,进行修改、编译、连接和运行。运行的结果是什么?
程序:main ( )
{
printf(\ \\n\ printf(\ }
运行结果是:
可知\\n的作用是:
4. 输入下列源程序,进行修改、编译、连接和运行。运行的结果是什么?
程序:#include
main ( ) { float x;
x=sin(0.45456); printf(\ \\n\ }
运行结果是:
可知语句float x; 的作用是:
可知sin的作用是:
5. 启动VC,在其集成环境中,输入下面的程序,以文件名Csy1_1.c保存在你的工作
目录中,然后进行编辑和运行调试程序(注意代码书写风格)。 #include
{
int a, b, sum;
a=10; //如果用scanf函数输入a,b变量的值应该怎么写? b=15; sum=a+b;
printf(\}
调试要求:
(1)将第3行最后的\;\去掉,运行程序,查看出错信息。 (2)在sum=a+b前插入一行:a=a+b;运行程序查看输出结果。
6. 编写一个求两数之差的程序。编辑、编译、连接和运行。运行结果是什么?程序和
结果写在下面:
上机实验二 数据类型、运算符与表达式
一.目的要求
1. 掌握C基本数据类型的基本概念、基本属性。
2. 学会如何书写一个整型、字符型、实型常量。如何定义一个整型、字符型、实型变量。
3. 掌握C算术运算符的基本概念、基本属性、运算规则。 4. 掌握表达式的求值规则。 5. 记录运行结果,回答问题。
二.实验内容
思考问题:数据类型、运算符、表达式等在C语句中充当什么成分?什么是标识符?整型、实型、字符型常量的书写法是怎样的?整型、实型、字符型变量怎样创建?字符串怎样表示?如何求表达式的值?混合表达式的求值规则是怎样的?
1.输入下列源程序,进行修改、编译、连接和运行。
程序:main ( )
{ char c1,c2; c1=97;//1 c2=98;//2
printf(\printf(\}
运行结果是:
两行结果的不同是由什么引起的
把注释1和注释2(即//1和//2)两行的赋值语句中,c1和c2分别赋值为400、500会产生什么结果,分析为什么。
2. 输入下列源程序,进行修改、编译、连接和运行。分析++运算符。
程序:main ( )
{ int i,j,m,n; i=8;
j=10; m=++i; n=j++;
printf(\
}
运行结果是: 分析前++和后++的不同
3. 输入下列源程序,进行修改、编译、连接和运行。分析++和--运算符。
程序:main ( )
{ int i,j; i=8; j=10;
printf(\printf(\printf(\
printf(\}
运行结果是: 分析运行结果:
4. 求下列表达式的值,并编写程序,上机进行验证。 ①x+a%3*(int)(x+y)%2/4 设x=2.5,a=7,y=4.7 程序:
②(float)(a+b)/2+(int)x%(int)y 设a=7,b=3,x=3.5,y=2.5 程序:
5. 求下列表达式的值,并编写程序,上机进行验证。 设a=12,n=5。
①a+=a ②a-=2 ③a*=2+3 ④a/=a+a 程序:
6. 输入并运行下段程序:
main() {
int x,y;
printf(\ scanf(\ x+=y; y=x-y; x-=y ;
printf(\}
在运行时向程序变量输入任意两个整数。查看输出结果,分析程序的功能。 7. 编一个程序,输入一个三位数据,在窗体打印输出其个位数,十位数和百数。
参考答案: main() {
int g,s,b,n;
printf(\输入一个三位整数:\ scanf(\ g=n; s=n/10; b=n/100;
printf(\个位=%d\\n十位=%d\\n百位=%d\\n\ }
8. 编写程序,从键盘输入梯形的上下底边长度和高,计算梯形的面积。
调试要求:输入不同的数值,查看程序运行结果是否正确。例如,输入3,4,5 或输入4.5,5.5,6。
参考答案: int main() {
float a,b,h,s;
printf(\请输入梯形的上底,下底和高,用逗号分隔\\n\ scanf(\ s=(a+b)*h/2;
printf(\梯形的面积=%.2f\ }
上机实验三 顺序结构程序设计
一.目的要求
1. 掌握顺序结构程序的组成部分——表达式语句和函数调用语句。
2. 掌握格式输入输出scanf()函数、printf()函数的调用语法;整型、实型、字符型数
据的输入输出格式。
3. 掌握字符输入输出函数getchar()、putchar()函数的调用语法。 4. 能够编写简单顺序结构的程序。
二.实验内容
思考问题: scanf()与printf()的格式控制串在用法上有什么区别?scanf()与printf()中不同数据类型对应的格式说明符是怎样的?
第1题 运行下面的程序,写出输出结果。
main()
{ int a=5,b=7;
float x=67.8564,y=-789.124;