C语言程序设计实验内容.docx
PAGE
PAGE1
2007-2008学年第二学期C语言程序设计实验内容
实验一、最简单的C程序设计
实验要求:了解TurboC2.0的使用,学会在该系统上如何编辑、编译、运行一个C程序;初步了解C语言的特点;掌握赋值语句的使用方法;掌握C语言数据类型的使用,初步掌握各种数据类型的输入输出方法和各种格式转换符的使用。
编程实现在屏幕上显示如下三行文字Hello,world!
WolcometotheClanguageworld!Everyonehasbeenwaitingfor.
编写一个C程序,输出以下信息:再让程序遗漏一些部分,观察出现的错误信息。
****************************Hello,World!
****************************
3)输入两个数,交换它们的值。
实验二、逻辑结构程序设计
实验要求:进一步了解TurboC2.0的使用;了解C语言表示逻辑量的方法;熟练掌握if语句和switch语句;结合程序掌握简单的算法;学习调试程序。
已知三个数a,b,c,找出最大值放于max中2.有一函数:
?x(x ?1)
y=??2x ?1(1? x ?
y=?
??3x ?11(x ?10 )
?
用scanf函数输入x的值(分别为x1,1~10,=10三种情况),求y值。
实验三、单重循环结构程序设计
实验要求:熟悉掌握用while语句、do-while语句和for语句实现单重循环的方法;掌握单重循环和逻辑结构的综合应用;掌握在程序设计中用循环的方法实现一些常用算法(如迭代、递推等);进一步学习调试程序。
1.有一数列:2/1,3/2,5/3,8/5,?求出这个数列的前10项之和。
打印500以内的“水仙花数”。“水仙花数”是一个三位数,其各位数立方和等于该数本身。
实验四、多重循环结构程序设计
实验要求:熟悉掌握用while语句、do-while语句和for语句实现单重循环的方法;掌握双重循环和逻辑结构的综合应用;掌握在程序设计中用循环的方法实现一些常用算法(如穷举等);进一步学习调试程序。
一个数如果恰好等于它的因子之和,这个数就称为完数。求100之内的所有完数。
打印下列图案
*
***
*****
*******
实验五、数组及其应用(一)
实验要求:掌握一维数组的定义、赋值和输入输出的方法;掌握字符数组和字符串函数的使用;掌握与数组有关的算法(特别是排序算法)。
在键盘上输入N个整数,试编制程序使该数组中的数按照从大到小的次序排列
输入一串字符,计算其中空格的个数
实验六、二维数组及其应用(二)
实验要求:掌握二维数组的定义、赋值和输入输出的方法;掌握与二维数组有关的算法(如矩阵的转置、矩阵的相乘、鞍点问题等,其中鞍点为必做,);
1.有一个3×4的矩阵,要求输出其中值最大的元素的值,以及它的行号和列号。2.求矩阵下三角形元素之和
3.找出一个二维数组中的鞍点,即该位置上的元素在该行上最大,在该列上最小。也可能没有鞍点。
实验七、函数(一)
实验要求:掌握定义函数的方法;掌握函数实参与形参的对应关系以及“值传递”的方式;掌握函数的嵌套调用的方法。
1.写一个判断素数的函数,在主函数输入一个整数,输出是否素数的信息2.写两个函数,分别求两个正数的最大公约数和最小公倍数,用主函数调用这两个函数并输出结果。两个正数由键盘输入。
实验八、函数(二)
实验要求:掌握函数的递归调用的方法;掌握全局变量、局部变量、动态变量和静态变量的概念和使用方法;学习对多文件程序的编译和运行。
利用递归编写一个函数,求N!,然后在主函数中输入N,并调用这个子函数。
写一函数,用“起泡法”对输入的10个字符按由小到大顺序排序。然后在主函数中调用
实验九、指针
实验要求:通过实验进一步掌握指针的概念,会定义和使用指针变量;能正确使用数组的指针和指向数组的指针变量;能正确使用字符串的指针和指向字符串的指针变量;了解二级指针的概念及其使用方法。
1.有一个班3个学生,各学4门课,计算总平均分数,以及第n个学生的成绩。
3.利用指针作函数的形参,求数组中元素的平均值
实验十、结构体与链表
实验要求:掌握结构体类型变量的定义和使用;掌握结构体类型数组的概念和使用;掌握链表的概念,初步学会对链表进行操作。
1.利用结构体与链表实现:一个班3个学生,各学4门课,计算总平均分数,以及第n个学生的成绩
主要参考书
⒈谭浩强编著,《C程序设计题解与上