当前位置:文档之家› C语言试验指导

C语言试验指导

C语言试验指导
C语言试验指导

实验指导

实验一 Visual C++6.0开发环境使用

1.实验目的

(1)熟悉Visual C++6.0集成开发环境。

(2)掌握C语言程序的书写格式和C语言程序的结构。

(3)掌握C语言上机步骤,了解C程序的运行方法。

(4)能够熟练地掌握C语言程序的调试方法和步骤

2. 实验内容

输入如下程序,实现两个数的乘积。

#include (stdio.h);

Int main()

{

x=10,y=20

p=prodct(x,t)

printf(“The product is :”,p)

int prodct(int a ,int b )

int c

c=a*b

return c

}

(1)在编辑状态下照原样键入上述程序。

(2)编译并运行上述程序,记下所给出的出错信息。

(3)再编译执行纠错后的程序。如还有错误,再编辑改正,直到不出现语法错误为止。3.分析与讨论

(1)记下在调试过程中所发现的错误、系统给出的出错信息和对策。分析讨论成功或失败的原因。

(2)总结C程序的结构和书写规则。

实验二数据类型、运算符和表达式

1.实验目的

(1)理解常用运行符的功能、优先级和结合性。

(2)熟练掌握算术表达式的求值规则。

(3)熟练使用赋值表达式。

(4)理解自加、自减运算符和逗号运算符

(5)掌握关系表达式和逻辑表达式的求值

2.实验内容

(1)整数相除

#include

int main()

{

int a=5,b=7,c=100,d,e,f;

d=a/b*c;

e=a*c/b;

f=c/b*a;

printf("d=%d , e=%d ,f=%d\n",d,e,f);

return 0;

}

(2)自加、自减运算

#include

int main()

{

int a=5,b=8;

printf("a++=%d\n",a++);

printf("a=%d\n",a);

printf("++b=%d\n",++b);

printf("b=%d\n",b);

return 0;

}

(3)关系运算和逻辑运算

#include

int main()

{

int a=5,b=8,c=8;

printf("%d,%d,%d,%d\n",a==b&&a==c,a!=b&&a!=c,a>=b&&a>=c,a<=b&& a<=c);

printf("%d,%d\n",a<=b||a>=c,a==b||b==c);

printf("%d,%d,%d,%d\n",!(a==b),!(a>=b),!(a>=c),!(a<=b));

return 0;

}

(1)在编辑状态下输入上述程序。

(2)编译并运行上述程序。

3.分析与讨论

(1)整数相除有什么危险?应如何避免这种危险?

(2)分析a++和++a的区别。

(3)条件表达式和逻辑表达式的意义是什么,它们取值如何?

(4)如何比较两个浮点数相等?为什么?

实验三格式化输入输出函数的使用

1.实验目的

(1)掌握格式字符使用的方法。

(2)掌握printf()进行格式化输出的方法。

(3)掌握scanf()进行格式化输入的方法。

(1)输入如下程序,观察运行结果

#include

int main()

{

int x=1234;

float f=123.456;

double m=123.456;

char ch='a';

char a[]="Hello,world!";

int y=3,z=4;

printf("%d %d\n",y,z);

printf("y=%d , z=%d\n",y,z);

printf("%8d,%2d\n",x,x);

printf("%f,%8f,%8.1f,%.2f,%.2e\n",f,f,f,f,f);

printf("%lf\n",m);

printf("%3c\n",ch);

printf("%s\n%15s\n%10.5s\n%2.5s\n%.3s\n",a,a,a,a,a);

return 0;

}

(2)输入下面程序,观察调试信息

#include

int main()

{

double x,y;

char c1,c2,c3;

int a1,a2,a3;

scanf("%d%d%d",a1,a2,a3);

printf("%d,%d,%d\n",a1,a2,a3);

scanf("%c%c%c",&c1,&c2,&c3);

printf("%c%c%c\n",c1,c2,c3);

scanf("%f,%lf",&x,&y);

printf("%f,%lf\n",x,y);

return 0;

}

(1)在VC++6.0集成开发环境中输入上述程序,观察调试结果。

(2)如果有错误,请修改程序中的错误。

3.分析与讨论

(1)分析程序错误及运行结果错误的原因。

(2)总结printf()中可使用的各种格式字符。

(3)总结转移字符的使用和功能。

实验四分支结构程序设计

(1)了解条件与程序流程的关系

(2)了解用不同的数据使程序的流程覆盖不同的语句、分支和路径。

(3)掌握if语句和if else语句的用法

(4)掌握switch语句的用法

2.实验内容

1.从键盘上输入三个数,让它们代表三条线段的长度,请写一个判断这三条线段所组成的三角形属于什么类型(不等边,等腰,等边或不构成三角形)的C程序。请分别设计下列数据对自己的程序进行测试:

(1)找出各条语句中的错误。

(2)找出各分支中的错误。

(3)找出各条件中的错误。

(4)找出各种条件组合中的错误。

(5)找出各条路径中的错误。

2.用scanf函数输入一个百分制成绩(整型量),要求输出成绩等级A,B,C,D,E。其中90-100分为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。具体要求如下:

(1)用if语句实现分支或switch分支。

(2)在输入百分制成绩前要有提示。

(3)在输入百分制成绩后,要判断该成绩的合理性,对于不合理的成绩(即大于100分或小于0分)应输出出错信息。

(4)在输出结果中应包括百分制成绩与成绩等级,并要有文字说明。

(5)分别输入百分制成绩:-90,100,90,85,70,60,45,101,运行该程序。

3.编程找出5个整数中的最大数和最小数,并输出找到的最大数和最小数。

3.分析与讨论

(1)总结分支程序设计的方法。

(2)复合语句的使用。

(3)switch语句的注意事项。

实验五循环结构程序设计

1.实验目的

(1)掌握在程序设计条件型循环结构时,如何正确地设定循环条件,以及如何控制循环的次数。

(2)了解条件型循环结构的基本测试方法。

(3)掌握如何正确地控制计数型循环结构的次数。

(4)了解对计数型循环结构进行测试的基本方法。

(5)了解在嵌套循环结构中,提高程序效率的方法。

2.实验内容

(1)输入一个正整数,并将其颠倒过来。如12345对应为54321。

(2)将一个长整型数s的每一位数位上的偶数依次取出来,构成一个新的数t中,高位仍在高位,低位仍在低位,例如:s=87653142时,t中的数为:8642。

(3)判断101~200之间有多少个素数。

(4)编写程序,输出杨辉三角。

3.分析与讨论

(1)总结条件循环结构的一般方法。

(2)如何测试计数型循环结构的控制表达式中的错误? (3)从实验中你得到了哪些提高嵌套循环程序效率的启示?

实验六 函数

1.实验目的

(1)掌握C 语言函数定义及调用的规则。 (2)理解参数传递的过程。

(3)掌握函数返回值的大小和类型确定的方法。 (4)理解变量的作用范围

2.实验内容

(1)上机调试下面的程序,记录系统给出的出错信息,并指出出错原因。 #include int main() {

int,y;

printf(“%d \n”,sum(x+y)); int sum(a,b) {

int a,b;

return(a+b); }

return 0; }

(2)编写一个程序,输入系数a 、b 、c ,求一元二次方程02

=++c bx ax 的根,包括主函数和如下函数。

判断a 是否为零。

计算判别式ac b 42

-

●计算根的情况。 ?输出根。

(3)输入下面程序,分析运行结果 #include

int func (int ,int ); int main ( )

{ int k=4,m=1,p1,p2; p1=func(k,m) ; p2=func(k,m) ;

printf("%d,%d\n",p1,p2) ; return 0; }

int func (int a,int b) { static int m=0,i=2;

i+=m+1;

m=i+a+b;

return (m);

}

3.分析与讨论

(1)针对以上实验内容写出相应的参数传递过程并分析结果。

(2)函数在定义时要注意什么?

(3)讨论静态局部变量的继承性?

实验七数组及其应用

1.实验目的

(1)掌握数组定义的规则。

(2)掌握C语言数组的基本用法。

(3)掌握数组名作为函数参数传递的方法

2.实验内容

(1)运行下面的C程序,根据运行结果,可以说明什么?

#include

int main( )

{

int num[5]={1,2,3,4,5};

inti i;

for(i=0;i<=5;i++)

printf(“%d”,num[i]);

return 0;

}

(2)为一个冒泡排序程序设计测试用例,并测试之。

(3)操作符&用以求一个变量的地址,这在函数scanf中已经使用过了。现在要你设计一个程序,返回一个3×5 的二维数组各元素的地址,并由此说明二维数组中各元素是按什么顺序存储的。

3.分析与讨论

(1)通过实验,分析定义与引用数组的区别。

(2)数组的作用是什么?

(3)数组名作为参数有什么特点?

实验八指针及其应用

1.实验目的

(1)掌握变量的指针及其基本用法。

(2)掌握一维数组的指针及其基本用法。

(3)掌握指针变量作为函数的参数时,参数的传递过程及其用法。

2.实验内容

(1)对以下程序进行运行,并从中了解变量的指针和指针变量的概念。

# include

int main()

{

int a=5,b=5,*p;

p=&a;

printf(“%d ,%ud\n”,a,p);

*p=8;

printf(“%d ,%ud\n”,a,p);

p=&b;

printf(“%d ,%ud\n”,a,p);

b=10;

printf(“%d ,%ud\n”,a,p);

return 0;

}

(2)运行以下程序,观察&a[0],&a[i])和p的变化,然后回答以下问题:

①程序的功能是什么?

②在开始进入循环体之前,p指向谁?

③循环每增加一次,p的值(地址)增加多少?它指向谁?

④退出循环后,p指向谁?

⑤你是否初步掌握了通过指针变搔引用数组元素的方法?

# include

int main()

{

int i,*p,s=0,a[5]={5,6,7,8,9};

p=a;

for(i=0;i<5;i++,p++)

s+=*p;

printf(“\n s=%d”,s);

return 0;

}

(3)先分析以下程序的运行结果,然后上机验证,并通过此例掌握通过指针变量引用数组元素的各种方法。

#include

int main( )

{

int i,s1=0, s2=0, s3=0, s4=0,*p,a[5]={1,2,3,4,5};

p=a;

for(i=0;i<5;i++)

s1+=p[i];

for(i=0;i<5;i++)

s2+=*(p+i);

for(p=a;p

s3+=*p;

p=a;

for(i=0;i<5;i++)

s4+=*p++;

printf(“\n s1=%d, s2=%d, s3=%d, s4=%d”s1,s2,s3,s4);

return 0;

}

(4)编写函数,将n个数按原来的顺序的逆序排列(要求用指针实现),然后编写主函数完成:

①输入10个数;

②调用此函数进行重排;

③输出重排后的结果。

3.分析与讨论

(1)指针的定义方法,指针和变量的关系。

(2)数组和指针的关系。

实验九结构体及其应用

1.实验目的

(1)掌握结构体类型变量与结构体数组的定义和使用。

(2)学会使用结构体指针变量和结构体指针数组。

(3)掌握链表的概念,初步学会对链表进行操作。

2.实验内容

(1)输入出10个学生的学号、姓名和成绩,求出其中的高分者和低分者。

#include

struct student

{

int num;

char name[20];

int score;

};

int main( )

{

int i;

struct student st,stmax,stmin;

stmax.score=0; stmin.score=100;

printf("\n input data");

for(i=0;i<10;i++)

{

scanf("%d%s%d",&st.num,https://www.doczj.com/doc/462957778.html,,&st.score);

if(st.score>stmax.score)

stmax=st;

if(st.score

stmin=st;

}

printf("\n

hight:%5d%15s%5d",stmax.num,https://www.doczj.com/doc/462957778.html,,stmax.score);

printf("\n

low:%5d%15s%5d",stmin.num,https://www.doczj.com/doc/462957778.html,,stmin.score);

return 0;

}

①分析程序,上机运行程序。

②程序中,哪些是对结构体变量的成员引用,哪些是整体引用?

③对于此例来说,用结构体变量作为数据结构有何优越性?

(2)有一学生情况如下表所示。编制一个C程序,用冒泡法对该学生情况表按成绩(grade)从低到高进行排序。

①结构体类型为

struct student

{

int num;

char name[8];

char sex;

int age;

double grade;

}

②在程序中用一个结构体指针数组,其中每一个指针元素指向结构体类型的各元素。

③在程序中,首先输出排序前的学生情况,然后输出排序后的结果,其格式如上表所示。(3)链表基本操作,具体要求如下:

①初始时链表为空,即链表的头指针为空。

②对于上表所示的学生情况表,依次将每个学生的情况作为一个结点插入到单链表的链头(即当前插入的结点将成为第一个结点)。

③所有学生情况都插入到链表中后,从链头开始,依次输出链表中的各结点值(即每个学生的情况)。输出格式如同上表。

3.分析与讨论

(1)结构体的作用,如何进行初始化?

(2)如何访问结构体中的成员。

(3)链表有什么优点?

实验十文件

1.实验目的

(1)掌握文件与文件指针的概念。

(2)学会使用文件打开、文件关闭、读与写文件等基本的文件操作函数。

(3)运用文件操作函数进行程序设计。

2.实验内容

(1)以文本方式建立初始数据文件,请输入10个学生的学号、姓名及考试成绩,形式如下:

1001LiLi 80

1002HuWei 90

1003LiMing 75

读入file1.dat中的数据,找出最高分和最低度分的学生。

#include

struct student

{

int num;

char name[20];

int score;

};

int main()

{

int i;

struct student st,stmax,stmin;

FILE *fp;

stmax.score=0; stmin.score=100;

fp=fopen("file1.dat","r");

if(!fp) return 1;

for(i=0;i<10;i++)

{

fscanf(fp,"%d%s%d",&st.num,https://www.doczj.com/doc/462957778.html,,&st.score);

if(st.score>stmax.score)

stmax=st;

if(st.score

stmin=st;

}

fclose(fp);

printf("

hight:%5d%15s%5d",stmax.num,https://www.doczj.com/doc/462957778.html,,stmax.score);

printf("\n

low:%5d%15s%5d",stmin.num,https://www.doczj.com/doc/462957778.html,,stmin.score);

return 0;

}

①分析程序,上机运行程序并分析运行结果。

②如果事先不知道学生个数,则程序应该如何修改?请将以上程序中的循环语句for(i=0;i<10;i++)改为(while(!feof(fp))再运行程序,看结果是否正确?

(2)读入file2.dat中的数据,然后按成绩从高到低度的顺序进行排序,并将排序结果分别以文本方式存入到文件file3.dat中,以二进制形式存入文件file4.dat中。

#include

struct student

{

int num;

char name[20];

int score;

};

void sort(struct student *,int);

int main()

{

int i,n=10;

struct student st[10];

FILE *fp,*fp1,*fp2;

fp=fopen("file2.dat","r");

if(!fp) return 1;

for(i=0;i<10;i++)

fscanf(fp,"%4d%10s%3d",&st[i].num,st[i].name,&st[i].score);

fclose(fp);

sort(st,n);

fp1=fopen("file3.dat","w");

for(i=0;i

fpri ntf(fp1,”%4d%10s%3d",st[i].num,st[i].name,st[i].score);

fclose(fp1);

fp2=fopen("file4.dat","wb");

fwrite(st,sizeof(struct student),n,fp2);

fclose(fp2);

return 0;

}

void sort(struct student *st,int n)

{

struct student *i,*j,t;

for(i=st;i

for(j=i+1;j

if(i->scorescore)

{

t=*i;

*i=*j;

*j=t;

}

}

请分析程序,上机运行程序,运行结果在哪里?与上一例相比,此例中对读取文件的格式有何不同?

(3)某班的学生145人,每人的信息包括:学号、姓名、性别、和成绩。编制一个C 程序,完成以下操作:

①定义一个结构体类型数组。

②打开可读写的新文件student.dat。

③使用函数fwrite()将结构体数组内容写入文件student.dat中。

④关闭文件student.dat。

⑤打开可读写文件student.dat。

⑥从文件中依次读出各学生情况并按学生成绩进行排序,输出排好序后的数据。

⑦关闭文件student.dat。

3.分析与讨论

(1)文件有哪些优点?

(2)文件常用的读写操作函数有什么不同?

(3)调试有关文件的程序要注意什么?

C语言实验指导书

《C语言》实验指导书 2016年10月

实验一C程序得运行环境与运行方法 一、实验目得 1。掌握所用得C语言环境得基本操作方法、 2.掌握编辑、编译、连接与运行C程序。 二、实验内容与要求 1、学习使用Visual C++6.0环境开发C程序。 (1)在磁盘上建立自己得文件夹,用于存放C程序,如“e:\cexam”。 (2)启动Visual C++6。0、执行“开始”-—“所有程序”——“Microsoft Visual Studio 6。0"——“Microsoft Visual Studio 6.0”命令,进入VC++编程环境,如图1 所示。 图1 MicrosoftVisual Studio6、0窗口 (3)新建C 程序文件。 执行“文件”——“新建”命令,单击如图2所示得“文件”选项卡,选中“C++So urceFile”;

图 2 新建文件 在“文件”文本框中输入文件名test1, 则C源程序被命名为test1。cpp,若想指定扩展名为.c,则需在“文件”文本框中输入文件名test1.c;在“目录”下拉列表框选择已经建立得文件夹,如,单击“确定”按钮,就新建了C源程序文件,并显示编辑窗口与信息窗口,如图3所示,然后在编辑窗口中输入程序。 (4)保存程序。 在如图3得界面输入程序代码。由于完全就是Windows 界面,输入及修改可借助鼠标与菜单进行,十分方便。当输入结束后,执行“文件”——“保存”命令,保存源文件。 图3编辑源程序(5)编译程序。信息窗口编辑窗口

执行“组建”--“编译[test1、cpp]”命令,弹出消息框,如图4所示,单击“就是"按钮,开始编译,并在信息窗口中显示编译信息。如果信息窗口中显示“test1.obj-0error(s),0 warning(s)",表示编译正确,没有发现错误与警告,并生成了目标文件test1、obj、 图4产生工作区消息框 如果显示错误信息,说明程序中存在严重得错误,必须改正,双击某行出错信息,程序窗口中会指示对应出错位置,根据信息窗口得提示分别予以纠正;如果显示警告信息,说明这些错误并未影响目标文件得生成,但通常也应该改正。 (6)连接程序。 执行“组建”——“组建[test1.exe]”命令,开始连接,并在信息窗口中显示连接信息、如果信息窗口中出现“test1.exe—0 error(s),0 warning(s)”,表示连接成功, 并生成了可执行文件test1、exe。 (7)运行程序。 执行“组建"——“执行[test1、exe]”命令,自动弹出运行窗口,如图5所示,显示运行结果。其中“Pressany key to continue”提示用户按任意键退出运行窗口,返回到VC++编辑窗口。 图 5 显示运行结果 (8)关闭程序工作区。 当一个程序编译连接后,VC++系统自动产生相应得工作区,以完成程序得运行与调试。若想执行第二个程序时,必须关闭前一个程序得工作区,然后通过新得编译连接,产生第二个程序得工作区。否则得话运行得将一直就是前一个程序。 执行“文件"--“关闭工作区命令",弹出得对话框如图 6所示,单击“就是”按钮,关闭工作区。 图 6 关闭所有文档窗口 (9)打开文件、 如果要再次打开C源文件,可以执行“文件”——“打开”命令,在查找范围中找到

《C语言》实验指导书

内江职业技术学院 上机实验指导书 科目:C语言程序设计 系别:电商学院 班级:15软件1班 教师:王刚 2015—2016学年第一学期

《计算机基础》课程实验指导书 目录 实验一C语言概述 (1) 实验二基本数据类型 (3) 实验三输入输出和算法 (6) 实验四选择和循环结构 (10) 实验五循环结构和函数 (13) 实验六模块化设计 (14) 实验七一维数组和字符串 (18) 实验八多维数组和指针 (20) 实验九指针 (22) 实验十指针和结构体 (23) 实验十一链表和共同体 (26) 实验十二文件 (27) 教材和参考书 1、教材: 《谭浩强、张基温,《C/C++程序设计教程》,高等教育出版社。 2、参考书: (1)《(美)H.M.Deitel,P.J.Deitel著,薛万鹏译,《C程序设计教程》,机械工业出版社。 (2)杨路明,《C语言程序设计教程》,北京邮电大学出版社。

实验一C语言概述 一、实验目的 1、了解所用的计算机系统。 2、了解在该系统上如何进行编辑、编译、连接和运行一个C程序。 3、通过运行简单的C程序了解C程序的特点。 二、实验内容 1、熟悉C语言集成环境。 2、利用C语言集成环境进行编辑、编译、连接和运行一个C程序。 3、运行一个自己编写的程序,程序的功能是输出两行文字。 三、实验设备及环境 微机若干台,并安装有C语言软件。 四、实验步骤 1、熟悉所用的系统。了解Windows资源管理器的使用方法:文件的查看、复制、运行等方法,C所在目录,文本文件的建立方法。 2、进入C,并新建一个C源程序文件。 3、熟悉C的集成环境,了解各菜单项有哪些子菜单。 4、输入下面的程序,注意区分大小写。 #include void main() { printf("This is a C program.\n"); } 编译并运行程序。 5、关闭工作区,新建一个程序,然后输入并运行一个需要在运行时输入数据的

《c语言》上机实验指导书

淮南师范学院 《C语言》 主编:井田

实验一、C 语言运行环境 (一)实验目的 1、了解C程序运行环境; 2、掌握运行环境的使用。 (二)实验设备 计算机;C编译环境 (三)实验要求 建立文件夹,采用你个人的学号+姓名来命名,例如:12111010101王明(四)实验内容 可以从以下题目中任意选做4——6题,也可自己命题,需注释说明功能 1、编程实现以下文字的输出。 I am a student. 2、编程实现交换两变量的值。(变量类型任意) 3、输入三个数,求三个数之和并输出。 4、输入三个数,求三个数中最大和最小的数并输出。 5、用sizeof测试并输出所用编译系统,int、long、short、char、float、double 等类型数据所占字节数。A=sizeof(int) 6、调用库函数,实现以下函数值的求取。 cos3.5678、log90、e2.567 #include #include void main() { printf("cos 3.5678 = %f\n", cos(3.5678)); printf("log 90 = %f\n", log(90)); printf("exp(2.567) = %f\n", exp(2.567)); }

实验报告包括:实验名称、实验目的、实验内容。其中实验内容包括程序和结果及结果分析。 实验二、常量的使用和变量与赋值 (一)实验目的 1、了解C 语言中常量的种类和作用; 2、了解基本类型常量在内存中的存储形式及变量的本质; 4、掌握赋值运算的意义和正确用法。 (二)实验设备 计算机;C编译环境 (三)实验要求 建立文件夹,采用你个人的学号+姓名来命名,例如:12111010101王明(四)实验内容 可以从以下题目中任意选做4——6题,也可自己命题,需注释说明功能 1、编程实现int、short、long、char、float、double等类型常量的输出。 2、编程实现int、short、long、char、float、double等类型变量的建立、赋值以及输出。 3、编程实现对int和float型数据进行格式化输入和输出。(要求使用格式修饰符) 4、编程实现对3个变量按照从大到小的排序。(变量类型任意) 5、编程实现不同类型数据进行赋值。 6、编程实现不同类型数据之间混合运算。(至少列举三种不同类型数据

C语言实验指导56(32+24)

前言 《程序设计语言(C)》课程是面向理工科的非计算机专业计算机基础教学的公共基础课程之一,本课程的任务是向学生介绍计算机程序设计的基本知识,使学生能够比较熟练地掌握C语言的语法规则及程序设计的基本方法与编程技巧,了解进行科学计算的一般思路。与课程配套的上机实验,是为培养学生应用计算机解决和处理实际问题的思维方法与基本能力,并初步积累编程经验,自己解决一些比较简单的程序课题,为结合本专业课程进一步学习和应用计算机打下基础。 要使实验达到应有的效果,在上机实验之前,必须知道本次实验的任务,根据实验任务,做好充分准备工作,只有这样才能做到目的明确,使实验达到应有的效果。上机前的准备工作包括以下几个方面: 1.复习和掌握与本次实验有关的教学内容; 2.根据实验的内容,对问题进行认真的分析,搞清楚要解决什么问题; 3.选用或设计适用的算法,编写程序代码。 上机实验结束后要撰写实验报告,实验报告的主要内容应包括如下几个方面: 1.实验目的 明确实验目的,以保证达到课程所指定的基本要求。在写实验报告时,要进一步确认是否达到了预期的目的。 2.实验内容 实验的目的是要通过解决一些具体问题来达到的。在实验报告中,实验内容是指本次实验中实际完成的内容。在每一个实验题目中,一般都提出一些具体要求,其中有些具体要求是为了达到实验目的而提出的,不仅有具体的实验题目,还应包括具体要求。 3.程序设计说明 包括程序功能说明、程序算法描述、程序代码设计(含完整代码)、程序运行、测试、运行结果分析。 上机实验编写程序代码时要养成良好的程序设计风格, 在上机输入源程序时要按照附录中“C语言编码规范”的要求来编写源代码文件。 按大纲要求,本实验指导共有12个实验,每个实验需要两个学时,共需24个学时。 2013-1-12 . i .

C语言上机实验

实验1目的1、熟悉VC++语言的上机环境及上机操作过程。 2、了解如何编辑、编译、连接和运行一个C程序。 3、初步了解C程序的特点。 三、实验内容: 说明:前三题为必做题目,后两题为选做题目。 1、输出入下信息:(实验指导书P79) ************************* Very Good ************************* 2、计算两个整数的和与积。(实验指导书P81) 3、从键盘输入一个角度的弧度值x,计算该角度的余弦值,将计算结果输出到屏幕。(书 P3) 4、在屏幕上显示一个文字菜单模样的图案: ================================= 1 输入数据 2 修改数据 3 查询数据 4 打印数据 ================================= 5、从键盘上输入两个整数,交换这两个整数。 实验二 二、实验目的: 1、掌握C语言的数据类型。 2、学会使用C语言的运算符及表达式。 3、掌握不同数据类型的输入输出方法。 三、实验内容: 说明:前四题为必做题目,后两题为选做题目。 1、输入r1、r2,求出圆形垫片面积。(实验指导书P84) 2、输入华氏温度h,输出摄氏温度c。(实验指导书P85) 3、从键盘输入一个3位整数,将输出该数的逆序数。(实验指导书P89) 4、输入并运行以下程序,分析运行结果。 #include void main( ) { int i,j; i=8; j=10; printf(“%d,%d\n”,++i,++j); i=8; j=10; printf(“%d,%d\n”,i++,j++); i=8; j=10; printf(“%d,%d\n”,++i,i);

C语言实验指导书

《C语言程序设计》实验指导书 每次实验(10分)一共100分,最后折合成50分计入最终成绩。 第一次实验(一星期完成) ●内容一:熟悉编译环境和工具 在VS中键入以下的这段程序 1)关键字变色,自动缩近,智能提醒 2)代码风格和注释 3)编译出错,连接出错。修改错误 4)调试,断点,监控变量,进入函数,跳出函数。监控内存,监控堆栈 在linux中键入以下这段程序 1)熟悉VIM程序,gcc编译程序(开两个终端窗口) 2)熟悉GDB调试程序的基本技巧。(list,backstrac; break, watch,delete; next, continue, run; print,set,help) 其中,help命令是一个非常的参考,如果忘记了某条具体的命令,可以随时去参考help命令来得到相关的细节。 3)介绍《鸟歌的私房菜》这本书 ●内容二:登陆https://www.doczj.com/doc/462957778.html,网站,在线提交。 1)熟悉基本的提交方法和规则 2)现场演示反作弊程序的效果 ●程序: 输入:两个整数,用空格分隔, 输出:两个整数的和,计算两个整数的和的功能,要求用函数实现,同时如果输入有错误,例如(12 abc)程序能够给出“error input”的提示。 参考输入: 12 33 参考输出: 45 参考输入: 12 abc 参考输出:

error input ●思考和扩展(无标准答案) 如果用户输入12 12abc 如何判断并终止程序,输出“error input”的提示 第二次实验(一星期完成) ●内容一:登陆ACM,演示OJ系统 1)介绍这个网站,有兴趣的同学可以去尝试一下() ●内容二:计算工资/小时程序 1)强制类型转换 2)一共有多少位的算法 3)整形数的溢出,以及针对特定问题,如何解决溢出问题 注意:linux编译下应该加上–lm 开关。 ●程序: 输入:工资数,小时数(整数,空格分隔)。 输出:工资/小时数(精确到小数点后2位),并根据四舍五入取整,然后将取整的数平方后计算一共有几位,后三位分别是什么? 参考输入: 2345 2 ←input (separate by space) 参考输出: 1172.50 ←average salary 1173 ← round off to integer 7 ← number of digit 0 2 5 ← the last three digit (separate by space) 第三次实验(两星期完成) ●内容一:介绍linux 下的grep,并给出相应的实例。重点介绍下面要用到的四个符号。 ●内容二:正则表达式 ^ 代表字符串开始 . 代表任意字符 $ 代表字符串末尾

C语言实验指导(2017) (2)

《C 语言程序设计》实验指导 书 计算机科学与技术系 项响琴编

第一部分:《C语言程序设计》实验教学大纲 课程编号:041310107 课程名称:程序设计语言Ⅰ 总学分:2.5 总学负荷:70 自主学习:57 课内实验学时:35 一、本实验课的性质、任务与目的 本实验课目的是使学生掌握C语言编程的常用方法,熟悉该语言中的语法、词法规则,为以后进行软件开发和学习后继专业课程打下基础。通过学习能够运用 C 语言中的各个知识点编写能完成一定功能的程序。训练学生进行复杂程序设计的技能和培养良好程序设计的习惯,其重要程度决不亚于知识的传授。把高级语言的学习与程序设计、上机实践紧密地结合起来,以提高学生能灵活运用新的知识分析问题和解决问题的能力。 二、本实验课所依据的课程基本理论 本实验课基于 C 语言的语法和词法规则、数据的表示及算法的处理,而语法及算法正是高级语言程序设计的主要研究对象。《C 语言程序设计》的主要任务是:C 语言是一种应用广泛结构化程序设计语言,本课程介绍 C 语言的基本概念、基本语法和编程方法,重点描述 C 语言的结构化的特征,并通过本课程的学习,使学生掌握一定的结构化程序设计的知识,以及用C语言编写程序的能力。 三、实验类型与要求 在做每个实验之前,让学生对本次实验相关的内容进行复习、算法设计、流程图的设计,做好实验的准备工作。每一次实验内容和具体要求见实验任务书。

四、每组人数与实验学时数 实验每组1人。 五、考核方式与评分办法 课内实验成绩=出勤率*5%+实验报告*15%+平时表现*30%+现场答辩 *50% 自主实验成绩=实验代码*30%+现场答辩*50%+实验报告*20% 六、实验报告要求 1、实验报告编写要求: 实验报告格式规范,要求在w ord 中编写,文中不要有空行,统一使用A4 页面。 页边距:上下 2.5cm、下 2cm、左 2.5cm、右 2cm。标题:宋体、四号字、加粗、 1.5 倍行距。 正文:宋体、小四号字、1.2 倍行距。 流程图或框架图:绘图要规范,整洁。 2、实验报告内容 (1)实验目的与要求 (2)实验内容(实验题目、程序思路分析与流程图、程序源代码、实验测试数据、实验运行结果截图) (3)实验分析与小结(本小组实验过程中的出现的问题、产生的原因、解决方法以及未能解决的问题;实验结果分析;代码有待优化的思路) (4)其它(对本课程教学的建议或意见、与专业课学习及其它)

C语言程序设计_上机实验指导与习题_第三版_(陈湘骥_编著_著)_华南农业大学_参考答案

C语言程序设计上机实验指导与习题 参考答案 (仅供教师内部参考) 华南农业大学

目录 上机实验 (1) 实验 1 C语言程序初步 (1) 一、实验目的 (1) 二、实验内容 (1) 实验2基本数据类型、运算和表达式 (3) 一、实验目的 (3) 二、实验内容 (3) 实验3基本输入与输出 (5) 一、实验目的 (5) 二、实验内容 (5) 实验4选择结构程序设计 (4) 一、实验目的 (4) 二、实验内容 (4) 实验5循环结构程序设计(一) (9) 一、实验目的 (9) 二、实验内容 (9) 实验6循环结构程序设计(二) (15) 一、实验目的 (15) 二、实验内容 (15) 实验7数组 (17) 一、实验目的 (17) 二、实验内容 (17) 实验8字符数组的应用 (22) 一、实验目的 (22) 二、实验内容 (22) 实验9函数的基本应用 (24) 一、实验目的 (24) 二、实验内容 (24) 实验10指针与结构体 (26) 一、实验目的 (26) 二、实验内容 (26) *实验11链表 (29) 一、实验目的 (29) 二、实验内容 (29) *实验12文件 (32) 一、实验目的 (32) 二、实验内容 (32)

上机实验 实验 1 C语言程序初步 一、实验目的 (1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。 (2)了解在该系统上如何编辑、编译、连接和运行一个C程序。 (3)通过运行简单的C程序,初步了解C程序的特点。 (4)在教师的指导下,学会使用JudgeOnline实验系统。 二、实验内容 1. 运行第一个 C 程序 [题目:The first C Program] 将下列程序输入 TC(或 VC++),编译、连接和运行该程序。 void main() { printf("The first C Program\n"); } [具体操作步骤] 以 Turbo C 上的操作为例 (1)Windows 进入后,按照第一章中介绍的方法,进入 Turbo C。 (2)在编辑窗口中输入程序。 (3)保存程序,取名为 a1.c。 (4)按照第一章中介绍的方法,编译、连接和运行程序。 2.在JudgeOnline系统中提交实现了计算a+b功能的程序 [题目 1001:计算 a+b] 由键盘输入两个整数,计算并输出两个整数的和。实现该功能的程序如下, void main() { int a, b; scanf("%d%d", &a, &b); 1

C语言实验指导书

C语言程序设计实验指导书 沈岚岚吕元长编写 桂林电子科技大学信息科技学院 2012.03

前言上机实验的目的和要求 一上机实验的目的 上机实验的目的,绝不仅仅是为了验证教材和讲课的内容,或者验证自己所编程序正确与否。学习程序语言,上机实验的目的如下: 1 加深对讲授内容的理解,尤其是一些语法规定,光靠课堂讲授,既枯燥无味又难以记住,通过多次上机,就能自然、熟练地掌握语法规定。 2 了解和熟悉C语言程序开发环境。熟悉一两种环境(计算机系统的软件和硬件条件),再遇到其他的系统时便会触类旁通,很快学会。 3 学会上机调试程序,也就是善于发现程序中的错误,并且能很快地排除这些错误,使程序能够正确地运行。要真正掌握计算机应用技术,就不仅应当了解和熟悉有关理论和方法,而且要求自己动手实践能力强。 4 在做实验时千万不要在程序通过后就认为万事大吉,完成任务了,应当在通过的程序上做一些调试和修改,看看会得到什么结果。多动脑筋思考,将会对你有很大帮助。 二上机实验前的准备工作 1 了解所用的计算机系统的性能和使用方法; 2 复习和掌握与本实验有关的教学内容; 3 准备好上机所用的程序,切忌自己不思考、不编制程序或抄袭别人的程序; 4 准备好调试和运行时所需的数据。 三上机实验的步骤 1 调出C语言编译系统,进入C语言工作环境; 2 输入自己编制好的程序; 3 检查输入是否有错,及时更正; 4 进行编译和连接; 5 运行程序,分析结果。 四、实验结束,整理实验报告 实验报告应包括以下内容: 1 上机题目; 2 程序清单; 3 运行结果; 4 对结果的分析和本次获得的经验和体会。

C语言程序设计实验实验指导书及答案

实验一熟悉C程序运行环境 班级学号成绩 一、实验目的 1. 熟悉C语言Visual C++6.0调试环境。 2. 掌握C程序的编辑、调试及运行。 二、实验内容 项目1. 调试并运行下面程序,并写出运行结果: #include int main() { printf(“Good morning!\n”); printf(“Hello,world!\n”); return 0; } 运行结果(注意,按照屏幕输出格式写): 项目2. 调试并运行下面程序,并写出运行结果: #include int main() { int a , b , sum; /*定义变量*/ a=23; b=56; /*为变量赋值*/ sum=a+b; /*计算两个变量的和*/ printf(“sum is %d\n”,sum); /*输出计算结果*/ return 0; } 运行结果:

项目3. 调试并运行下面程序,并写出运行结果: #include int max(int,int); int main() { int a , b , c; /*定义变量*/ a=23; b=56; /*为变量赋值*/ c=max(a,b); /*调用max函数,将得到的值赋给c*/ printf(“max is %d\n”,c); /*输出c的值*/ return 0; } int max(int x,int y) /*定义max函数,函数值为整型*/ { int z; /*定义变量*/ if(x>y) z=x; else z=y; return(z); /*将z的值返回*/ } 运行结果: 三、提高部分 1.试想,如果求10个数中的最大者,则程序该如何编写。 程序代码 运行结果:

C语言上机实验(第四版)参考答案

C语言上机实验(第四版)参考答案 C语言程序设计上机实验指导与习题 参考答案(第四版) (学生改编) 实验 1 C语言程序初步一、实验目的 (1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。(2)了解在该系统上如何编辑、编译、连接和运行一个C程序。(3)通过运行简 单的C程序,初步了解C程序的特点。(4)在教师的指导下,学会使用在线 评判系统。 二、实验内容 1. 运行第一个C程序 [题目:The first C Program] 将下列程序输入visual c++ ,编译、连接和运行该程序。 #include\main() { printf(\ } [具体操作步骤] (1)在编辑窗口中输入程序。 (2)保存程序,取名为 a1.c。 (3)按照第一章中介绍的方法,编译、连接和运行程序。 (4)按照第三章介绍的方法,将代码提交到在线评判系统,系统返回“通过”,则该题完成。 2. 在在线评判系统中提交实现了计算a+b功能的程序 [题目1001:计算a+b] 由键盘输入两个整数,计算并输出两个整数的和。实现该功能的程序如下, #include \main() { int a, b;

scanf(\ printf(\ } (1)在程序编辑窗口中输入程序。(2)保存程序,取名为 a2.c。 (3)按照前二章中介绍的方法,编译、连接和运行程序。(4)在程序运行 过程中,输入 15 30↙ (↙表示输入回车符) (5)如果看到如下输出结果,则表明15+30 的结果正确,如果得不到如下结 果,则需检查并更正程序。 45 (6)按照第三章中介绍的方法进入在线评判系统。 (7)显示题目列表,点击题号为1001,题名为“计算a+b”的题目。 (8)查看完题目要求后,点击页面下端的“sumbit”,参照第二章提交程序 的方法提交程序a2.c。 (9)查看评判结果,如果得到“accepted”则该题通过,否则返回第一步检 查程序是否正确。 3 实验 2 基本数据类型、运算和表达式一、实验目的 (1)掌握C语言数据类型,熟悉如何定义一个整型和实型的变量,以及对它 们赋值的方法。(2)掌握不同的类型数据之间赋值的规律。 (3)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是 自加(++)和自减(--)运算符的使用。 (4)进一步熟悉C程序的编辑、编译、连接和运行的过程。二、实验内容 1. 变量的定义 [题目 1117:变量定义,按要求完成程序] 下面给出一个可以运行的程序,但是缺少部分语句,请按右边的提示补充完整 缺少的语句。 #include \ main() { int a, b; /*定义整型变量 a和 b*/ int i, j; /*定义实型变量i和 j*/ a=5; b=6; i=3.14; j=i*a*b; printf(\ } [具体操作步骤]

C语言实验指导书

实验1 C语言初步与编程环境介绍(2学时) 1.目的要求 1)熟悉C语言基本结构, 2)熟悉VC控制台应用程序设计的使用方法。 2.实验内容 (1)创建项目,分别将教材P13和P14程序输入并编译。 (2)下列程序能正确运行吗?如果能,写出运行结果;如果不能,指出错误原因并改正。 Main() { printf("hello\n"); } 附:VC 6.0 环境的使用方法介绍 Microsoft Visual C++ (简称VC)是微软公司生产的基于其Windows系统的软件开发工具。它具有使用灵活,并与32位Windows内核(使用于Windows 95/98/NT/2000)高度兼容的特点,从而被Windows程序员们广泛使用。同时,VC同样可以加工处理C语言程序,与标准的ANSI C语言兼容。VC提供了一种控制台操作方式,本实验课程主要在控制台方式下进行设计运行。 一、什么是控制台程序? Win32控制台程序(Win32 Console Application)是一类Windows程序,它不使用复杂的图形用户界面,程序与用户交互时通过一个标准的文本窗口,通过标准的输入输出流(I/O Streams)进行。 一个最简单的控制台程序如下: #include // 包含使用标准输入输出库的头文件声明 main() { printf(”Hello World!”); //输出一个字符串 } 二、如何使用MSVC编写控制台程序?

控制台程序按照下面几个步骤进行。 1、打开VC集成开发环境。 双击桌面图标“Microsoft Visual C++ 6.0”,或者从系统菜单“开始”/“程序”/“Microsoft Visual Studio 6.0”/“Microsoft Visual C++ 6.0”(如图1),打开VC 开发环境(如图2)。 图 1 从开始菜单中打开VC开发环境 图 2 VC开发环境界面

《C语言》实验指导书

《C语言程序设计》 实 验 指 导 书 华中师范大学信息技术系 二00九年三月

项目一:熟悉C语言的运行环境及简单程序设计 (12) 实验一熟悉C语言的运行环境 实验二c程序初步 (3) 实验三数据类型及输入输出 (5) 实验四运算符与表达式 (8) 项目二:流程控制、指针、数组、模块化程序设计 实验五分支程序设计 (9) 项目六循环程序设计 (11) 项目七函数 (12) 项目八数组 (13) 项目九指针 (15) 项目三:综合程序设计——竞赛编排及优胜排序 (注:每个项目应包含实验学习目标、实验内容、实验原理、实验设备、实验步骤、实验注意事项或实验思考等内容。 基本型实验应有明确的实验学习目标、详细的过程和具体的结果;综合设计型实验应有明确的实验学习目标、可参考的过程和实验结果评价标准)

实验基本要求 1、每次实验前,学生必须预习实验内容,实验程序必须自行编制、自行调试。 2、每次实验,学生都必须提交实验报告,内容包括实验目的、实验内容、实验程序、实验过程(软件的使用、程序的调试)等,见下面的实验报告模版。 3、学生第一次上机时,应在教师机指定文件夹下建立以自己学号+姓名的子文件夹,例如学号为2005683001的学生张三,应在教师机指定文件夹下建立“2005683001张三”的子文件夹,此文件夹就是学生张三存放本课程实验全部文档的文件夹,也是教师评价学生饰演成绩的主要依据。 4、学生每次实验完毕后,都应将实验报告、实验程序等文档上传到教师机自己建立的子文件夹中。 5、学生每次实验,都应该在考勤表上签到。 附 华中师范大学信息技术系c语言程序设计实验报告 实验目的: 实验设备(包括软件): 实验内容: 实验过程: 实验程序及实验结果: 实验体会:

C语言上机实验指导

实验要求: 上机实验一般经历上机前的准备(编程)、上机调试运行和实验后的总结三个步骤。 1.上机前的准备 根据问题,进行分析,选择适当算法并编写程序。上机前一定要仔细检查程序(称为静态检查)直到找不到错误(包括语法和逻辑错误)。分析可能遇到的问题及解决的对策。准备几组测试程序的数据和预期的正确结果,以便发现程序中可能存在的错误。 上机前没有充分的准备,到上机时临时拼凑一个错误百出的程序,宝贵的上机时间白白浪费了;如果抄写或复制一个别人编写的程序,到头来自己一无所获。 2.上机输入和编辑程序,并调试运行程序 首先调用C语言集成开发环境,输入并编辑事先准备好的源程序;然后调用编译程序对源程序进行编译,查找语法错误,若存在语法错误,重新进入编辑环境,改正后再进行编译,直到通过编译,得到目标程序(扩展名为OBJ)。下一步是调用连接程序,产生可执行程序(扩展名为EXE)。使用预先准备的测试数据运行程序,观察是否得到预期的正确结果。若有问题,则仔细调试,排除各种错误,直到得到正确结果。在调试过程中,要充分利用C 语言集成开发环境提供的调试手段和工具,例如单步跟踪、设置断点、监视变量值的变化等。整个过程应自己独立完成。不要一点小问题就找老师,学会独立思考,勤于分析,通过自己实践得到的经验用起来更加得心应手。 3.整理上机实验结果,写出实验报告 实验结束后,要整理实验结果并认真分析和总结,根据教师要求写出实验报告。 实验报告一般包括如下内容: ⑴实验内容 实验题目与要求。 ⑵算法说明 用文字或流程图说明。 ⑶程序清单 ⑷运行结果 原始数据、相应的运行结果和必要的说明。 ⑸分析与思考 调试过程及调试中遇到的问题及解决办法;调试程序的心得与体会;其他算法的存在与实践等。若最终未完成调试,要认真找出错误并分析原因等。 实验一C语言运行环境 一、实验目的 1.了解TC环境的组成。 2.学习TC环境的使用方法。 3.了解C语言程序从编辑、编译、连接到运行并得到运行结果的过程。 二、实验内容 1.了解TC环境的组成。 开机后进入WINDOWS系统的"资源管理器",找到TC环境所在的文件夹。查看在TC目录下的以字母TC开头的文件,是否包括了TC.EXE、TCC.EXE、TLINK.EXE、TCCONFIG.TC等文件;查看INCLUDE、LIB两个子目录下的文件。复习这些文件夹的作

大一C语言上机实验试题和答案

实验一上机操作初步(2学时) 一、实验方式:一人一机 二、实验目的: 1、熟悉VC++语言的上机环境及上机操作过程。 2、了解如何编辑、编译、连接和运行一个C程序。 3、初步了解C程序的特点。 三、实验内容: 说明:前三题为必做题目,后两题为选做题目。 1、输出入下信息:(实验指导书P79) ************************* Very Good ************************* 2、计算两个整数的和与积。(实验指导书P81) 3、从键盘输入一个角度的弧度值x,计算该角度的余弦值,将计算结果输出到屏幕。(书 P3) 4、在屏幕上显示一个文字菜单模样的图案: ================================= 1 输入数据 2 修改数据 3 查询数据 4 打印数据 ================================= 5、从键盘上输入两个整数,交换这两个整数。 四、实验步骤与过程: 五、实验调试记录: 六、参考答案: 1、#include void main( ) { printf(“********************\n”); printf(“ Very Good\n”); printf(“********************\n”); } 2、#include void main( ) { int a,b,c,d; printf(“Please enter a,b:”); scanf(“%d,%d”,&a,&b); c=a+b; d=a*b; printf(“%d+%d=%d\n”,a,b,c); printf(“%d*%d=%d\n”,a,b,d);

C语言实验指导及报告模板

C语言程序设计

附件1:实验报告模板 C语言程序设计 实验报告 实验一简单的C程序 教学班级:冶金136 学号:01 姓名:张博 课程教师:胡春安实验教师:胡春安 完成时间:2015-2016学年第1学期

实验一简单的C程序 实验时间:2机时 一、实验目的 1. 熟悉C程序编辑环境,掌握主要菜单项的操作和作用。 2. 熟悉编写一个C程序的上机过程(编辑、编译、链接和运行)。 二、实验意义 通过上机实验,加深对第一章所学基本知识:C语言的基本结构和简单C 程序的理解。通过调试简单的C程序,让学生对C程序的编辑、编译、链接和运行有一个直观的体验和熟悉,激发学习的好奇心和兴趣,为后面的全面学习奠定非常必要的基础。 三、实验内容 1.验证实验 (1)掌握程序的编辑、编译、连接、运行、调试过程,按以下步骤进行实验。 ?输入源程序 #include int main() { float a,b; a=12 b=10; c=a%b; printf("a=%d,b=%d,c=%d",a,b,c); return 0; } ?编译、链接及运行,并记录下列问题: ①您在编辑、编译该程序时,在输出窗口显示了几条错误信息?请记录在实验报告中。 C:\Users\h\Desktop\c\ex1\main.c||In function 'main':| C:\Users\h\Desktop\c\ex1\main.c|6|error: expected ';' before 'b'| C:\Users\h\Desktop\c\ex1\main.c|7|error: 'c' undeclared (first use in this function)| C:\Users\h\Desktop\c\ex1\main.c|7|note: each undeclared identifier is reported only once for each function it appears in| C:\Users\h\Desktop\c\ex1\main.c|7|error: invalid operands to binary % (have 'float' and 'float')| ||=== Build failed: 3 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===| 错误1:变量b前少了分号“;” 错误2:变量c未定义; 错误3:%运算符运算对象必须是整型数据。

C语言实训指导书

C语言实训指导书 C语言课程组编写 适用专业2010级计算机应用技术专业 2010级计算机网络技术专业 2010级计算机软件技术专业 2010级计算机网络工程专业 2010级计算机信息管理专业 2010级计算机网络安全专业 2010级计算机电子商务专业

软件学院CCUTSOFT 2011年1月 目录 C语言实训安排 (3) 一.实训时间 (3) 二.实训地点 (3) 三.实训对象 (3) 四.开发环境 (3) 五.实训目的 (3) 六.实训内容 (4) 七.实训题目 (4) 八.指导教师 (6) 十.实训方案 (7) 十一.实训要求 (7) 十二.考核方式 (8) 十三.进度计划 (9) 附录 (9)

C语言实训安排 一.实训时间 起始时间:2010.1.4——2008.1.12 上午:8:00——12:30 下午:13:00——17:30 二.实训地点 软件楼204、206、401、402、404、408、412、416、504、606、608、612、614 三.实训对象 10级计算机应用技术专业 10级计算机网络技术专业 10级计算机软件技术专业 10级计算机网络工程专业 10级计算机信息管理专业 10级计算机网络安全专业 10级计算机电子商务专业 四.开发环境 Turbo C 2.0 五.实训目的 本次实训旨在进一步巩固学生本学期在C语言课程上的所学,加强学生对面向过程的理解,加快学生编程思想的形成,培养学生的编程兴趣,从而更快的提高学生的程序设计能力,并为下学期各课程的打下一个坚实的基础。

六.实训内容 本次实训要求学生依据指导教师对实训各题目的讲解和实训指导书中对各实训题目的分析,结合自身学习情况,从四道实训题目中人选一题,独立完成该题目的设计和实现,并完成实训报告的撰写。 七.实训题目 题目一:迷宫游戏 内容:1、使用二维数组形成游戏地图,数组元素0表示墙1表示路2表示出口。 2、用*表示人,E表示出口,并在游戏地图输出完毕后,单独输出。 3、当人物标示与出口标示重合时,输出成功提示,并结束程序。 4、使用共用体变量接收键盘按键信息。 5、使用bios.h函数库中的bisokey函数读取键盘按键信息。 6、使用stdio.h函数库中的gotoxy函数设置输出位置。 7、使用键盘方向键LEFT、RIGHT、UP、DOWN移动人物,键值分 别为75、77、72、80。 8、使用ESC键退出程序运行界面并显示失败提示,键值27。 9、在移动过程中要注意处理重合问题。 题目二:学生成绩管理 内容:1、使用结构体数组定义学生基本信息(学号、姓名、年龄)及成绩(C语言成绩、英语成绩和数据库成绩)。如下: struct student { int id,age,cscore,enscore,dbscore; char name[21]; }students[5]; 2、实现学生基本信息(学号、姓名、年龄)及成绩(C语言成绩、 英语成绩和数据库成绩)的录入。 3、基本信息的查询(根据学号)、删除(根据学号)与修改(根据学 号)。 4、根据每科成绩,求出每个人的总分 5、对学生考试成绩进行排序(根据学号或各科成绩排序)

C语言实验指导

C语言实验指导书 实验一:简单的C语言程序 一、实验目的 1.了解C语言的语法结构和书写格式; 2.掌握C语言数据类型以及变量的定义和赋值;掌握运算符的种类、运算优先级和结合性;掌握不同类型数据间的转换和运算。 2.掌握C语言的表达式。 3.掌握C程序的编辑、编译、连接和运行的过程。 二、实验内容 1.输入并运行以下程序: #include void main( ) { char c1,c2; c1=97; c2=98; p rintf(“%c %c\n”,c1,c2); printf(“%d %d\n”,c1,c2); } 在此基础上 ①将第三行、第四行改为: c1=321;c2=353; (类型转换) 再使之运行,分析其运行结果。 ②将第二行改为: int c1,c2; 再使之运行,分析其运行结果。 2.输入并运行以下程序: ①#include void main() { int a,b,x; x=(a=3,b=a--); printf(“x=%d,a=%d,b=%d\n”,x,a,b); } x=3,a=2,b=3 ②#include void main() { float f1,f2,f3,f4; int m1,m2; f1=f2=f3=f4=2; m1=m2=1; printf(“%d\n”,(m1=f1>=f2) && (m2=f3

③#include void main() { float f=13.8; int n; n=(int)f%3; printf(“n=%d\n”,n); } 3.输入并运行以下程序: #include void main( ) { int i=8,j=10,m,n; m=++i;n=j++; printf(“%d,%d,%d,%d\n”,i,j,m,n); } 分别作以下改动并运行: ①将程序改为: #include void main( ) { int i=8,j=10; printf(“%d,%d\n”,i++,j++); (8,10) } ②在①的基础上,将printf语句改为: printf(“%d,%d\n”,++i,++j);(9,11) ③再将printf语句分别改为: printf(“%d,%d,%d,%d\n”,i,j, i++,j++);(8,10,8,10) printf(“%d,%d,%d,%d\n”,++i,++j,i,j); (9,11,8,10) ④程序改为: main( ) { int i=8,j=10,m=0,n=0; m+=i++; n-=--j; printf(“i=%d,j=%d,m=%d,n=%d\n”,i,j,m,n); } (i=9,j=9,m=8,n=-9) 4. 请将下列给出的两个程序段分别输入计算机后,分析其运行结果: ①void main() { int num; num=32767; printf(“num=%d\n”,++num); } ②void main() { int a=-2; printf(“%d, %d\n”,a, a--); }

C语言试验指导

实验指导 实验一 Visual C++6.0开发环境使用 1.实验目的 (1)熟悉Visual C++6.0集成开发环境。 (2)掌握C语言程序的书写格式和C语言程序的结构。 (3)掌握C语言上机步骤,了解C程序的运行方法。 (4)能够熟练地掌握C语言程序的调试方法和步骤 2. 实验内容 输入如下程序,实现两个数的乘积。 #include (stdio.h); Int main() { x=10,y=20 p=prodct(x,t) printf(“The product is :”,p) int prodct(int a ,int b ) int c c=a*b return c } (1)在编辑状态下照原样键入上述程序。 (2)编译并运行上述程序,记下所给出的出错信息。 (3)再编译执行纠错后的程序。如还有错误,再编辑改正,直到不出现语法错误为止。3.分析与讨论 (1)记下在调试过程中所发现的错误、系统给出的出错信息和对策。分析讨论成功或失败的原因。 (2)总结C程序的结构和书写规则。 实验二数据类型、运算符和表达式 1.实验目的 (1)理解常用运行符的功能、优先级和结合性。 (2)熟练掌握算术表达式的求值规则。 (3)熟练使用赋值表达式。 (4)理解自加、自减运算符和逗号运算符 (5)掌握关系表达式和逻辑表达式的求值 2.实验内容 (1)整数相除 #include int main() {

int a=5,b=7,c=100,d,e,f; d=a/b*c; e=a*c/b; f=c/b*a; printf("d=%d , e=%d ,f=%d\n",d,e,f); return 0; } (2)自加、自减运算 #include int main() { int a=5,b=8; printf("a++=%d\n",a++); printf("a=%d\n",a); printf("++b=%d\n",++b); printf("b=%d\n",b); return 0; } (3)关系运算和逻辑运算 #include int main() { int a=5,b=8,c=8; printf("%d,%d,%d,%d\n",a==b&&a==c,a!=b&&a!=c,a>=b&&a>=c,a<=b&&a<=c); printf("%d,%d\n",a<=b||a>=c,a==b||b==c); printf("%d,%d,%d,%d\n",!(a==b),!(a>=b),!(a>=c),!(a<=b)); return 0; } (1)在编辑状态下输入上述程序。 (2)编译并运行上述程序。 3.分析与讨论 (1)整数相除有什么危险?应如何避免这种危险? (2)分析a++和++a的区别。 (3)条件表达式和逻辑表达式的意义是什么,它们取值如何? (4)如何比较两个浮点数相等?为什么? 实验三格式化输入输出函数的使用 1.实验目的 (1)掌握格式字符使用的方法。 (2)掌握printf()进行格式化输出的方法。 (3)掌握scanf()进行格式化输入的方法。 2.实验内容 (1)输入如下程序,观察运行结果 #include

相关主题
文本预览
相关文档 最新文档