admin管理员组

文章数量:1532218

2024年3月26日发(作者:)

实验一 用C语言编写简单程序

一、实验目的

1. 熟悉VC6.0的编程环境,掌握运行C程序的基本步骤。

2. 了解C程序的基本框架,模仿例题编写简单的C语言程序。

3. 正确书写算术表达式、赋值表达式和关系表达式。

4. 掌握基本输入输出函数的使用,正确调用C语言提供的数学库函数。

5. 掌握简单的单步调试方法。

二、实验环境

Windows XP;Visual C++ 6.0。

三、实验内容

1.在屏幕上显示一个句子“What is a computer?”。

2.求华氏温度150F对应的摄氏温度。计算公式如下:

55

cf32

99

其中,c表示摄氏温度;f表示华氏温度。

3.输入x,计算下列分段函数的值(保留2位小数),请调用sqrt函数求平方根,调用pow函

数求幂。

1

2

(x1)2x x<0

2

f(x)

x x0

4. 输入一个正整数m

(0m100)

,求

i

im

100

四、实验要求

1. 将上机验证正确的源代码写到实验报告上。

2.根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

1

实验二 分支结构程序设计-1

一、实验目的

1.熟练掌握关系表达式的使用。

2.熟练掌握使用else-if语句实现多分支结构程序设计。

二、实验环境

Windows XP;Visual C++ 6.0。

三、实验内容

1.输入x,计算并输出下列分段函数sign(x)的值。

1 x<0

ysign(x)

0 x=0

1 x>0

2.输入月薪salary,输出应交的个人所得税tax(保留2位小数)。按照2011年开始实行的新的

个人所得税法,计算公式为:tax = rate*(salary-3500)-deduction。

当salary≤3500时,rate=0、deduction=0

当3500

当5000

当8000

当12500

当38500

当83500

3.输入一个正整数n,再输入n个学生的百分制成绩,统计各等级成绩的个数。成绩等级分为

五分级,分别是A(90-100),B(80-89),C(70-79),D(60-69)和E(0-59)。

四、实验要求

1. 将上机验证正确的源代码写到实验报告上。

2. 根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

2

实验二 分支结构程序设计-2

一、实验目的

1.熟练掌握关系表达式和逻辑表达式的使用。

2.熟练掌握字符型数据的输入输出。

3.熟练掌握用嵌套的if语句或switch语句实现多分支结构程序设计。

4.熟练掌握switch语句中的break语句的作用。

5.掌握使用断点调试程序的方法。

二、实验环境

Windows XP;Visual C++ 6.0。

三、实验内容与教学过程

1.查询水果的单价。有4种水果,苹果(apple),梨(pear),橘子(orange)和葡萄(grape),

单价分别是3.00元/千克,2.5元/千克,4.10元/千克和10.20元/千克。在屏幕上显示以下菜单(编号

和选项),用户可以连续查询水果的单价,当查询次数超过5次时,自动退出查询;不到5次时,用

户可以选择退出。当用户输入编号1-4,显示相应水果的单价(保留一位小数);输入0,退出查询;

输入0-4之外的其它编号,显示价格为0。

[1] apple [2] pear [3] orange [4] grape [0] exit

2.输入一个整数x,判断x能否被3、5、7整除,并输出以下信息之一。

(1) 能同时被3、5、7整除。

(2) 能被其中两个数整除。

(3) 能被其中一个数整除。

(4) 不能被3、5、7任意一个数整除。

3.输入五级制成绩(A-E),输出相应的百分制成绩区间(0-100)。五级制成绩对应的百分制成

绩区间为:A(90-100),B(80-89),C(70-79),D(60-69)和E(0-59)。

四、实验要求

1. 将上机验证正确的源代码写到实验报告上。

2. 根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

3

实验三 循环结构程序设计-1

一、实验目的

1. 熟练使用for、while和do-while语句实现简单的循环程序。

2. 理解循环条件和循环体,以及for、while和do-while语句的相同及不同之处。

3. 掌握使用Debug菜单调试程序的方法。

二、实验环境

Windows XP;Visual C++ 6.0。

三、实验内容

1.输入一个正整数n,再输入n个整数,输出最小数。

2.输入一个整数,求它的位数以及各位数字之和。例如,123的位数是3,各位数字之和是6。

3.在中国数学史上,广泛流传着一个“韩信点兵”的故事:据说韩信在点兵的时候,为了知道

有多少兵,同时又能保住军事机密,便让士兵排队报数:

按从1至5报数,记下最末一个士兵报的数为1;

按从1至6报数,记下最末一个士兵报的数为5;

按从1至7报数,记下最末一个士兵报的数为4;

按从1至11报数,记下最末一个士兵报的数为10;

你知道韩信至少有多少兵?

四、实验要求

1. 将上机验证正确的源代码写到实验报告上。

2. 根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

4

实验三 循环结构程序设计-2

一、实验目的

1. 掌握break语句的使用。

2. 掌握continue语句的使用。

二、实验环境

Windows XP;Visual C++ 6.0。

三、实验内容

1.从键盘上输入一个正整数,判断该数是否为素数。

2.输入一个正整数n,输出2/1 + 3/2 + 5/3 + 8/5 + …的前n项之和,保留2位小数。(该序列从

第二项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子)。

3.输入两个正整数a和n,求a + aa + aaa + aaaa + aa…a(n个a)之和。例如,输入2和3,输

出246(2+22+222)。

四、实验要求

1. 将上机验证正确的源代码写到实验报告上。

2. 根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

5

实验三 循环结构程序设计-3

一、实验目的

1. 熟练掌握嵌套循环程序设计。

2. 掌握C程序的调试方法。

二、实验环境

Windows XP;Visual C++ 6.0。

三、实验内容

1.将一笔零钱(大于8分,小于1元,精确到分)换算成1分、2分和5分的硬币组合。输入

金额,输出共有多少种换法。

2.输入两个正整数m和n(0 < m < n < 1000),输出m到n之间的所有水仙花数。水仙花数是

指各位数字的立方和等于其自身的数。

3.计算2-100之间的所有素数之和。

四、实验要求

1. 将上机验证正确的源代码写到实验报告上。

2. 根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

6

实验三 循环结构程序设计-4

一、实验目的

1. 熟练掌握嵌套循环程序设计。

2. 掌握C程序的调试方法。

二、实验环境

Windows XP;Visual C++ 6.0。

三、实验内容

1.输入一个正整数n(n < 7),输出n行由大写字母A开始构成的三角形字符阵列图形。例如

输入的正整数是4,则显示一个4行直角三角形,第一行“ABCD”,第二行“EFG”,第三行“HI”,

第四行“J”。

2.显示一个5行的等腰三角形,第一行有一个星号,第二行有三个星号,第三行有五个星号,

第四行有7个星号,第五行有9个星号。

3.显示一个5行的菱形,第一行有一个星号,第二行有三个星号,第三行有五个星号,第四行

有3个星号,第五行有1个星号。

四、实验要求

1. 将上机验证正确的源代码写到实验报告上。

2. 根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

7

实验四 函数程序设计-1

一、实验目的

1. 熟练掌握函数的定义和调用。

2. 熟练掌握使用函数编写程序。

3.熟练掌握函数的实参、形参和返回值的概念及使用。

二、实验环境

Windows XP;Visual C++ 6.0。

三、实验内容

1.输入x,计算并输出下列分段函数sign(x)的值。要求定义和调用函数sign(x)实现分段函数。

2.输入一批正整数(以零或负数为结束标志),求其中所有奇数的和。要求定义和调用even(n)

函数判断整数的奇偶性,当n为偶数时返回1,否则返回0。

1 x<0

ysign(x)

0 x=0

1 x>0

3.给定平面任意两点坐标(x1,y1)和(x2,y2),求这两点之间的距离(保留2位小数)。

要求定义和调用函数dist(x1,y1,x2,y2)计算两点间的距离。

4.输入两个正整数m和n(1 ≤ m,n ≤ 500),统计并输出m和n之间的素数的个数以及这些

素数之和。要求定义和调用函数prime(m)判断m是否为素数。

四、实验要求

1. 将上机验证正确的源代码写到实验报告上。

2. 根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

8

实验四 函数程序设计-2

一、实验目的

1. 掌握局部变量与全局变量在函数中的运用。

2. 掌握单步调试进入函数和跳出函数的方法。

二、实验环境

Windows XP;Visual C++ 6.0。

三、实验内容

1.读入一个整数,统计并输出该数中“2”的个数。要求定义和调用函数countdigit(number,digit),

其功能是统计整数number中数字digit的个数。例如:countdigit(12292,2)的返回值为3。

2.输入两个正整数m和n(1 ≤ m,n ≤ 1000),输出m-n之间的所有满足各位数字的立方和等

于它本身的数。要求定义和调用函数is(number)判断number的各位数字之立方和是否等于它本身。

3

.根据下列公式可以计算出从n个不同元素中取出m个元素(m <= n)的组合数。编写程序

输入两个正整数m和n(m ≤ n),计算并输出组合数。要求定义和调用函数fact(n)计算n!,函数类

型为double。

m

C

n

n!

m!(nm)!

四、实验要求

1. 将上机验证正确的源代码写到实验报告上。

2. 根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

9

实验四 函数程序设计-3

一、实验目的

1. 掌握嵌套函数的使用方法。

2. 掌握递归函数的编程方法。

二、实验环境

Windows XP;Visual C++ 6.0。

三、实验内容

1.求1! + 2! + … + 10!,要求定义并调用递归函数fact(n)计算n!,函数类型为double。

2.用递归方法编写求斐波那契数列项的函数,返回值为整型,并写出相应的主函数。

3

.输入一个正整数n,将其转换为二进制后输出。要求定义并调用函数dectobin(n),它的功能

是输出n的二进制。

四、实验要求

1. 将上机验证正确的源代码写到实验报告上。

2. 根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

10

实验五 数组程序设计-1

一、实验目的

1. 熟练掌握一维维数组编程的方法。

2. 熟练掌握排序算法。

3. 掌握一维数组的调试方法。

二、实验环境

Windows XP;Visual C++ 6.0。

三、实验内容

1. 输入一个正整数n (1 < n ≤ 10),再输入n个整数,输出平均值(保留两位小数)。

2. 输入一个正整数n (1 < n ≤ 10),再输入n个整数,输出最大元素及其下标(假设最大元素

唯一且下标从零开始)。

3.输入一个正整数n (1 < n ≤ 10),再输入n个整数,将它们从大到小排序后输出。

四、实验要求

1. 将上机验证正确的源代码写到实验报告上。

2. 根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

11

实验五 数组程序设计-2

一、实验目的

1. 熟练掌握二维数组编程的方法。

2. 熟练掌握字符串的存储和操作方法。

3. 掌握二维数组和字符数组的调试方法。

二、实验环境

Windows XP;Visual C++ 6.0。

三、实验内容

1.读入一个正整数(1 ≤ n ≤ 6),再读入n阶矩阵a,计算该矩阵除副对角线、最后一列和最后

一行以外的所有元素之和(副对角线从矩阵的右上角到左下角的连线)。

2.读入一个正整数(0 < n < 6),输出九九乘法表的前n*n项(将乘数、被乘数和乘积放入一个

二维数组中,再输出该数组)。

3.输入一个字符,再输入一个以回车结束的字符串(少于80个字符),在字符串中查找该字符。

如果找到,则输出该字符在字符串中所对应的最大下标(下标从0开始);否则输出“NOT FOUND”。

4.输入一个以回车结束的字符串(少于80个字符),将其中的大写字母用下列对应大写字母替

换,其余字符不变,输出替换后的字符串。

原字母 对应字母

A → Z

B → Y

C → X

D → W

X → G

Y → B

Z → A

四、实验要求

1. 将上机验证正确的源代码写到实验报告上。

2. 根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

12

实验六 指针程序设计-1

一、实验目标

1. 理解指针、地址和变量/数组之间的关系。

2. 掌握通过指针操作数组元素的方法。

3. 掌握变量地址/数组名作为函数参数的编程方法。

二、实验环境

Windows XP;Visual C++ 6.0。

三、实验内容

1.编写程序计算输入的两个实数的各与差。要求定义一个函数sum_diff(float op1,float op2,float

*psum,flat *pdiff),其中op1和op2是输入的两个实数,*psum和*pdiff是计算得出的和与差。

2.编写程序拆分输入实数的整数部分与小数部分。要求自定义一个函数void splitfloat(float x,

int *intpart,float *fracpart),其中x是被拆分的实数,*intpart和*pfracpart分别是实数x折分出来的

整数部分与小数部分。

3.定义函数void sort(int a[ ],int n),用选择法对数组a中的元素升序排序。

4.在数组中查找指定元素。输入一个正整数n,然后输入n个整数存入数组a中。再输入一个

整数x,在数组a中查找x,如果找到则输出相应的下标,否则输出“not found”。要求定义一个并

调用函数search(list,n,x),它的功能是在数组list中查找元素x,若找到则返回相应的下标,否则

返回-1。

四、实验要求

1. 将上机验证正确的源代码写到实验报告上。

2. 根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

13

实验六 指针程序设计-2

一、实验目标

1. 掌握通过指针操作字符串的方法。

2. 掌握与字符串操作与关的几个库函数。

二、实验环境

Windows XP;Visual C++ 6.0。

三、实验内容

1.找出最长的字符串。输入5个字符串,输出其中最长的字符串。利用scanf()输入字符串。

2.删除字符串中的字符。输入一个字符串s,再输入一个字符c,将字符串s中出现的所有字

符c删除。要求定义并调用函数delchar(c),它的功能是将字符串s中出现的所有c字符删除。

3.字符串复制。输入一个字符串t和一个正整数m,将字符串t从第m个字符开始的全部字符

复制到字符串s中,再输出字符串s。要求用字符指针定义并调用函数strmcpy(s,t,m),它的功能

是将字符串t从第m个字符开始的全部字符复制到字符串s中。

4.编程判断输入的一串字符是否为回文。所谓回文是指顺序读和逆序读都一样的字符串。

四、实验要求

1. 将上机验证正确的源代码写到实验报告上。

2. 根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

14

本文标签: 实验输入输出函数