10级软件工程C语言程序设计实验指导书文档格式.docx

上传人:b****5 文档编号:20757824 上传时间:2023-01-25 格式:DOCX 页数:11 大小:19.80KB
下载 相关 举报
10级软件工程C语言程序设计实验指导书文档格式.docx_第1页
第1页 / 共11页
10级软件工程C语言程序设计实验指导书文档格式.docx_第2页
第2页 / 共11页
10级软件工程C语言程序设计实验指导书文档格式.docx_第3页
第3页 / 共11页
10级软件工程C语言程序设计实验指导书文档格式.docx_第4页
第4页 / 共11页
10级软件工程C语言程序设计实验指导书文档格式.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

10级软件工程C语言程序设计实验指导书文档格式.docx

《10级软件工程C语言程序设计实验指导书文档格式.docx》由会员分享,可在线阅读,更多相关《10级软件工程C语言程序设计实验指导书文档格式.docx(11页珍藏版)》请在冰豆网上搜索。

10级软件工程C语言程序设计实验指导书文档格式.docx

k=017;

g=111;

print(“%d\t”,++k);

printf(“%x\n”,g++);

运行结果为:

实验2顺序结构程序设计

⑴掌握C语言中赋值语句的使用方法。

⑵掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符。

⑶进一步熟悉C程序的编辑、编译、连接和运行的过程。

⒉实验内容

用下面的scanf函数输入数据,使a=3,b=7,x=,y=,c1=’A’,c2=’a’。

问在键盘上如何输入?

请书写程序

#include“”

{inta,b;

floatx,y;

charc1,c2;

scanf(“a=%db=%d”,&

a,&

b);

scanf(“%f%e”,&

x,&

y);

scanf(“%c%c”,&

c1,&

c2);

printf(“a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%c\n”);

运行,并按照如下方式在键盘上输入:

A=3b=7

Aa

运行结果:

A=3,b=7,x=,y=,c1=A,c2=a

思考:

为什么在第三个scanf函数双引号第一个字符为空格字符,如果没有这个空格字符,而写成:

scanf(“%c%c”,&

按以上的输入、输出将如何变化?

请分析原因

实验3选择结构程序设计

⑴了解C语言表示逻辑量的方法(以0代表”假”,以非0代表”真”)。

⑵学会正确使用逻辑运算符和逻辑表达式。

⑶熟练掌握if语句和switch语句。

⑷结合程序掌握一些简单的算法。

⑸学习调试程序。

题目⑴:

有3个整数a、b、c,由键盘输入,输出其中最大的数。

题目⑵:

求三位数的水仙花数。

要求:

每道题目分别画出程序流程图,书写程序,试运行(如何输入,结果如何)。

实验4、循环结构程序设计

⑴熟悉掌握用while语句,do-while语句和for语句实现循环的方法。

⑵掌握在程序设计中用循环的方法实现一些常用算法(如穷举、迭代、递推等)。

⑶进一步学习调试过程。

输入两个正整数m和n,求其最大公约数和最小公倍数。

输入一行字符,分别统计出其中大小写英文字母、空格、数字和其他字母的个数。

题目⑶:

猴子吃桃问题。

猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。

第二天早上又将剩下的桃子吃掉一半,又多吃了一个。

以后每天早上都吃了前一天剩下的一半零一个。

到第10天早上想再吃时,就只剩一个桃子了。

求第一天共摘多少桃子。

实验5函数定义和使用

⑴学习C语言中函数的定义和调用方法。

⑵掌握通过参数在函数间传递数据的方法。

⑶熟悉TC集成环境对包含函数调用的程序的调试方法。

⒉实验题目

A:

修改调试题目:

调试下列程序,使之具有如下功能:

fun函数是一个判断整数是否为素数的函数,使用该函数求1000以内的素数平均值。

写出调试过程。

{inta=0,k;

/*a保存素数之和*/

floatav;

/*av保存1000以内素数的平均值*/

for(k=2;

k<

=1000;

k++)

if(fun(k))/*判断k是否为素数*/

a+=k;

av=a/1000;

printf("

av=%f\n"

av);

fun(intn)/*判断输入的整数是否为素数*/

{inti,y=0;

for(i=2;

i<

n;

i++)

if(n%i==0)y=1;

elsey=0;

returny;

调试以下程序并查看运行结果:

{inta=1,b=2,c;

c=max(a,b);

maxis%d\n"

c);

max(intx,inty)#include“”

{incx();

incy();

incx();

incx()

{intx=0;

x=%d\t"

++x);

incy()

{staticinty=0;

\ny=%d\n"

++y);

B“文件包含”处理测试

⑴文件包含以下内容:

#definePRprintf

#defineNL"

\n"

#defineD"

%D"

#defineD1DNL

#defineD2DDNL

#defineD3DDDNL

#defineD4DDDDNL

#defineS"

%S"

⑵文件包含以下内容:

#include"

"

{inta,B,C,D;

charstring[]="

CHINA"

;

a=1;

B=2;

C=3;

D=4;

PR(D1,a);

PR(D2,a,B);

PR(D3,a,B,C);

PR(D4,a,B,C,D);

PR(S,string);

调试并察看运行结果。

注意文件保存的路径。

实验7数组应用编程

⑴掌握一维数组和二维数组定义、赋值和输入输出的方法。

⑵掌握字符数组和字符串函数的使用。

输入10个整数,按每行3个数输出这些整数,最后输出10个整数的平均值。

{inti,n,a[10],av;

for(i=0;

n;

scanf("

%d"

a[i]);

{printf("

if(i%3==0)printf("

);

i!

=n;

av+=a[i];

av);

上面给出的程序是完全可以运行的,但是运行结果是完全错误的。

调试时请注意变量的初值问题、输出格式问题等。

请使用前面实验所掌握的调试工具,判断程序中的错误并改正。

在程序运行过程中,可以使用<

Ctrl>

+<

Break>

键终止程序的运行,返回到TC环境。

B、编程题目:

(题目⑴、题目⑵为一组,题目⑶为一组,题目⑷为一组。

每个同学每组都必须完成1题)

每道题目分别书写程序,试运行(如何输入,结果如何)。

从键盘输入10个整数存入数组,找出其中最大和最小值,并输出。

从键盘输入一个字符串,编写程序将该字符串逆序。

输出杨辉三角形(要求输出10行)

1

11

121

1331

14641

15101051

1615201561

………………

(提示,使用二维数组)

题目⑷:

输入4×

4的数组,编写程序实现:

①求出对角线上各元素的和;

②求出对角线上行、列下标均为偶数的各元素的积;

③找出对角线上其值最大的元素和它在数组中的位置。

 

实验8数组名作为函数的参数

⑴掌握数组名作为函数参数的基本使用方式。

⑵掌握与数组有关的算法(特别是排序算法)。

编程题目:

(题目⑴、题目⑵为一组,题目⑶为一组。

编写函数实现将数组元素按从小到大的顺序排序,主函数从键盘输入10个整数存入数组,调用函数后输出数组的元素。

用数组名作为函数参数,编写一个比较两个字符串s和t大小的函数strcomp(s,t),要求s小于t时返回-1,s等于t时返回0,s大于t时返回1。

在主函数中任意输入4个字符串,利用该函数求最小字符串。

输入6×

6的数组,下面的各要求通过编写函数实现,要求用数组名作为函数参数:

实验9使用指针处理数组

⑴掌握指针变量的定义与引用。

⑵掌握指针与变量、指针与数组的关系。

⑶掌握用数组指针作为函数参数的方法。

调试下列程序,使之具有如下功能:

用指针法输入12个数,然后按每行4个数输出。

{intj,k,a[12],*p;

for(j=0;

j<

12;

j++)

p++);

{printf("

*p++);

if(j%4==0)printf("

);

调试该程序时将a设置为一个"

watch"

,数组a所有元素的值在一行显示出来。

调试时注意指针变量指向哪个目标变量。

任意输入2个数,调用两个函数分别求:

⑴2个数的和;

⑵2个数交换值。

要求用函数指针调用这两个函数,结果在主函数中输出。

{inta,b,c,(*p)();

%d,%d"

&

b);

p=sum;

*p(a,b,c);

p=swap;

*p(a,b);

sum=%d\n"

c);

a=%d,b=%d\n"

a,b);

sum(inta,intb,intc)

{c=a+b;

swap(inta,intb)

{intt;

t=a;

a=b;

b=t;

调试程序时注意参数传递的是数值还是地址。

(题目⑴为一组,题目⑵为一组。

编写用指针变量作为函数参数实现两个数的交换的函数,主函数输入两个个数都为10的数组A,B,调用所编写的函数交换数组A,B中对应元素的值。

编写用指针变量作为函数参数求数组的最小值、最大值和平均值的函数,主函数输入个数都为10的数组,调用所编写的函数并输出该数组的最小值、最大值和平均值。

实验10使用指针处理数组

本题的实现要求用函数实现,主函数只负责进行函数调用。

函数的参数要求全部用到的情况是:

●用数组名作函数参数;

●用指向数组元素的指针变量作函数参数;

●用指向一维数组的指针变量作函数参数;

题目:

输入两个行、列数相同的矩阵(实际上是二维数组)A、B,以矩阵的方式分别输出A、B;

求矩阵的和并输出;

求出每个矩阵中的最大值及其位置;

求出每个矩阵中绝对值最大的元素及其位置。

下面的各要求通过编写函数实现:

①输入矩阵(实际上是二维数组);

②输出矩阵;

②求出两个矩阵的和。

设A=(aij)m×

n,B=(bij)m×

n,则C=A+B=(cij)m×

n,cij=aij+bij;

③求矩阵中的最大值及其位置;

④求矩阵中绝对值最大的元素及其位置。

实验11结构体程序设计

⑴掌握结构体类型变量的定义和使用。

⑵掌握枚举类型的概念与使用。

⑶掌握基础的链表操作。

⑷掌握用户自定义类型的特点和应用。

有若干个学生,每个学生的数据包括学号、姓名、五门课的成绩,从键盘输入若干个学生数据,要求打印出五门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、五门课的成绩、平均分数)。

●要求用一个input函数输入5个学生数据;

●用一个average函数求总平均分;

●用max函数找出最高分学生数据;

总平均分和最高分的学生的数据都在主函数中输出。

提示:

定义结构体如下:

structstudent{

charnum[6];

charname[10];

floatscore[6];

/*其中最后一个元素用来保存平均成绩*/

};

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 职业教育 > 中职中专

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1