《C语言程序设计实验》
指 导 书
(简明版)
中北大学软件学院
2015年10月
实验一 顺序结构程序设计(2学时)
1、熟悉C编译环境、简单C程序结构及书写方式、以及C程序的编辑、编译、连接、运行、调试的步骤;
2、掌握C语言的基本数据类型及其输入输出格式,以及输入输出函数的使用方法;
3、掌握C语言的算术运算符(特别是自增、自减运算符)、赋值运算符、关系运算符、逻辑运算符、条件运算符、逗号运算符的使用;
4、掌握C语言顺序结构程序的执行流程、设计方法,能够根据实际问题灵活使用顺序结构,画出程序的算法流程图,设计出逻辑合理、思路清晰、结果正确的顺序结构程序。
二、实验内容及要求
1、实验内容包括8道题目,分为基本内容和选做内容两部分。要求:
(1)基本内容中的实验题目是必须要完成的,选做内容中的实验题目可以根据自己的情况选做或全做(越多越好,适当加分);
(2)在实验之前编写出基本内容、选做内容中的所有程序,实验前检查(视未完成情况适当扣分);
(3)对于设计型题目,要求画出程序流程图(传统流程图和N-S图);
(4)在上机实验过程中,注意总结和体会上机步骤(编辑、编译、连接、运行、调试、结果分析),注意培养观察、分析和排除编译错误、连接错误和程序逻辑错误的初步能力;
(5)上机结束后,应按要求认真书写实验报告(格式见附件)。
2、基本内容
(1)[验证型]编辑下列程序,然后进行编译、连接和运行,观察结果,并简要总结简单C程序的结构、书写格式以及上机过程;
#include
int main( )
{
printf("Hello, world!\n");
return 0;
}
(2)[验证型]通过运行下程序,#include
int main( )
{
int a = 9, b = 2;
float x = 32.8459, y = -792.451;
char d = 'R';
long n = 5461237;
unsigned u = 65535;
printf("%d,%d\n", a, b);
printf("%3d,%3d\n", a, b);
printf("%f,%f\n", x, y);
printf("%-10f,%-10f\n", x, y);
printf("%8.2f,%8.2\n", x, y);
printf("%.4f,%.4f\n", x, y);
printf("%3f,%3f\n", x, y);
printf("%e,%10.2e\n", x, y);
putchar(d);
putchar('\n');
printf("%c,%d,%o,%x\n", d, d, d, d);
printf("%ld,%lo,%x\n", n, n, n);
printf("%u,%o,%x,%d\n", u, u, u, u);
return 0;
}
(3)[验证型]编辑下列程序,进行编译、连接和运行。观察结果并分析++和--运算符的作用。
#include
int main ( )
{
int i, j;
i = 5;
j = 6;
printf("%d,%d \n", i, j);
printf("%d,%d \n", i++, j--);
printf("%d,%d \n", i, j);
printf("%d,%d \n", ++i, --j);
return 0;
}
(4)[设计型]编程求解表达式m=x+a%3*(int)(x+y)%2/4的值。(设x=2.5, a=7, y=4.7)。
(5)[设计型]编程实现:输入一个数,输出以该值为半径的圆面积,以该值为半径的球体表面积与体积,pi取值3.1415926536。直角三角形的两条直角边求斜边的长度。(float)(a+b)/2+(int)x%(int)y。(设a=7, b=3, x=3.5, y=2.5)。
(8)[设计型]编程实现:从键盘输入一个小写字母,输出该字母的大小写形式及对应的ASCII码值。
三、相关知识点及实验指导
(一)相关知识点
1、简单C语言程序的结构、编译与运行的步骤;
2、C语言的基本数据类型(整型,浮点型,字符型)及相互转换;
3、基本运算符及表达式:算术运算符(包括自增、自减运算符),赋值运算符(包括复合赋值运算符),关系运算符,逻辑运算符,条件运算符,逗号运算符及相应的表达式;
4、算法的表示方法:程序流程图(传统流程图和N-S图);
5、C语言中的字符型数据输入输出函数putchar与getchar,格式输入输出函数printf与sca