文档库 最新最全的文档下载
当前位置:文档库 › C语言程序设计实验实验指导书及答案

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

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

实验一熟悉C程序运行环境

班级学号姓名成绩

一、实验目的

1. 熟悉C语言Visual C++调试环境。

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个数中的最大者,则程序该如何编写。

程序代码

运行结果:

实验二数据及其运算

班级学号姓名成绩

一、实验目的

1. 掌握C数据类型的概念、熟悉整型、字符型和实型基本类型的常量的用法;学会三种基本类型变量的定义、赋值和使用方法。

2. 掌握算术表达式、关系表达式及逻辑表达式的特点及用法。

3. 熟悉运算符的优先级和结合性的概念。

4. 学习简单程序的编写方法。

二、实验内容

项目1. 编辑运行下面程序,并分析运行结果。

#include<>

int main()

{

int m,a,b,c,d,e; /*定义整型变量*/

printf(“please input a data:m=”);

scanf(“%d”,&m);/*从键盘输入一个整数*/

a=m+1;

b=m-2;

c=m*3;

d=m/4;

e=m%5;

printf(“a=m+1;a=%d\n”,a);

printf(“b=m-2;b=%d\n”,b);

printf(“c=m*3;c=%d\n”,c);

printf(“d=m/4;d=%d\n”,d);

printf(“e=m%%5;e=%d\n”,e);

return 0;

}

运行结果:

项目2. 编辑运行下面程序,并分析运行结果。

#include<>

int main()

{

float m,n,s;

printf(“m=”);

scanf(“%f”,&m);/*输入矩形的边长*/

printf(“n=”);

scanf(“%f”,&n);/*输入矩形的边长*/ s=m*n; /*计算矩形的面积*/

printf(s=%f\n”,s); /*输出矩形的面积*/ return 0;

}

(1)输入24和5,运行结果:(2)输入-24和5,运行结果:

分析结果是否正确?

(3)对上面程序进行修改,当输入一个非法的边长(负数或零),会给出提示而不计算矩形的面积。输入-24和5,运行结果:

项目3. 先阅读程序,并写出结果,再运行程序并分析结果。

#include<>

int main()

{

int i,j,m,n,p,q,x,y;

i=8;

j=10;

p=0;

q=0;

x=1;

y=1;

m=++i;

选做)

根据矩形面积的计算方法,编写一个输入圆半径r,计算园周长L和圆面积S的程序。注意判断圆半径r 是否大于零。(程序代码和运行结果可写在指导书背面)

实验三程序控制结构(选择)

班级学号姓名成绩

项目1.三角形成立条件判断及面积计算

【项目任务】输入三个整型数据,判断这三个整型数据能否围成三角形,如果能组成三角形,计算并输出它的面积,如果不能围成三角形输出“三条边不能围成三角形”。

【项目说明】

C语言实现选择结构筑要用if语句,按照判断所给定的条件是否满足,根据判定结果的真或假来决定执行在if语句中给出的两种操作之一。

【项目目的】

(1)正确使用关系表达式和逻辑表达式表达条件。

(2)学习分支语句if的使用方法。

(3)进一步熟悉VC集成环境的使用方法,学习VC环境提供的调试工具。

【项目要点】

(1)已知三边求三角形面积的公式:

p=(a+b+c)/2 s= sqrt(p*(p-a)*( p-b)*( p-c))

(2)已知三边能围成三角形的条件是:任意两边之和大于第三边。

(3)C语言中求平方根的函数是sqrt(double x),该函数在头文件中。

(4)if语句中“表达式”必须用“(”和“)”括起来,它的值为逻辑值。除常见的关系表达式或逻辑表达式外,也允许是其他类型的数据,如整型、实型、字符型等。

(5)else子句(可选)是if语句的一部分,必须与if配对使用,不能单独使用。

程序代码:

运行结果:

项目2. 百分制成绩转换为成绩等级

【项目任务】

输入一个百分制成绩,输出对应的等级。

【项目目的】

(1)正确使用关系表达式和逻辑表达式表达条件。 (2)学习多switch 分支选择语句的使用方法。 【项目要点】

解决本项目的关键是如何将输入的百分制成绩与case 常量联系起来,不难想到将百分制成绩(用score 表示)除以10之后再取整,一定得到0到10之间的数。9、10对应’a ’,8对应‘b ‘,……,5、4、3、2、1、0对应’e ’既不及格。 程序代码:

运行结果:

项目3.选做

?

?<--=>+=0

100

012x x x x x y 。

(程序代码和运行结果可写在指导书背面)

实验四程序控制结构(循环)

班级学号姓名成绩

项目1:使用循环结构实现重复处理

【项目说明】

从键盘输入一个班的成绩,把百分制转换成等级制。将百分制成绩(用score表示)除以10之后再取整,一定得到0到10之间的数。9、10对应’a’,8对应‘b‘,……,5、4、3、2、1、0对应’e’既不及格。要求分别使用三种循环结构实现。该项目中,假设班级人数不固定,规定输入若干0至100的成绩,如果成绩不在此范围,则表示结束。该项目中,同时要使用switch语句实现多分支选择结构。【项目目的】

(1)掌握用while语句和do…while语句实现循环的方法。

(2)掌握用for语句实现循环的方法。

(3)掌握三种语句的特点和应用技巧。

(4)掌握用break语句和continue语句改变循环状态的方法。

【项目内容】

1、用while语句实现的程序代码:

2、用do…while和break语句实现的程序代码:

3、用do…while和continue语句实现的程序代码:

4、用for语句实现的程序代码:

项目2.(选做)

10

1!

n

n =

∑(即求1!2!3!10!

++++

K)(程序代码和运行结果可写在指导书背面)

实验五数组

班级学号姓名成绩

项目1. 冒泡排序法

【项目说明】

输入10个数,用“冒泡法”对10个数排序(由小到大)。冒泡法的基本思想:通过相邻两个数之间的比较和交换,使(数值)较小的数逐渐从底部移向顶部,较大的数逐渐从顶部移向底部。就像水底的气泡一样逐渐向上冒,故而得名。

【项目目的】

(1)掌握冒泡排序算法的编程。

(2)掌握与数组有关的算法。

程序代码:

运行结果:

项目2. 字符统计

【项目说明】

有一篇文章,共有3行文字,每行80个字符。要求分别统计出其中英文字母和数字的个数。

【项目目的】

(1)掌握键盘输入字符串方法。

(2)掌握二维数组的处理方法。

【技术要点】

(1)3行文字可定义一个二维字符数组来表示。

(2)使用gets( ) 函数对字符串进行输入。

程序代码:

#include <>

int main()

{int i,j,upp,low,dig,spa,oth;

char text[3][80];

upp=low=dig=spa=oth=0;

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

{ printf("please input line %d:\n",i+1);

gets(text[i]);

for (j=0;j<80 && text[i][j]!='\0';j++)

{if (text[i][j]>='A'&& text[i][j]<='Z')

upp++;

else if (text[i][j]>='a' && text[i][j]<='z')

low++;

else if (text[i][j]>='0' && text[i][j]<='9')

dig++;

else if (text[i][j]==' ')

spa++;

else

oth++;

}

}

printf("\nupper case: %d\n",upp);

printf("lower case: %d\n",low);

printf("digit : %d\n",dig);

printf("space : %d\n",spa);

printf("other : %d\n",oth);

return 0;

}

运行结果:

项目3.(选做)

在二维数组中,若某一位置上的元素在该行中最大,而在该列中最小,则该元素即为该二维数组的一个鞍点。要求从键盘上输入一个二维数组,当鞍点存在时,把鞍点找出来。

(程序代码和运行结果可写在指导书背面)

实验六函数

班级学号姓名成绩

项目1:使用函数实现对二维数组转置。

【项目说明】

写一个函数,使给定的3*3的二维整型数组转置,即行列互换。要求输出转换之前和转换之后的结果。

【项目目的】

(1)掌握函数的定义和调用。

(2)掌握二维数组名作为函数的参数的使用技巧。

【技术要点】

(1)使用二重循环对二维数组进行输入,处理和输出;

(2)二维数组名作为函数的参数,定义函数需要给出第二维的大小。

程序代码:

运行结果:

项目2:使用函数实现成绩处理

【项目说明】

输入3个学生4门课的成绩,分别用函数实现以下功能:(1)计算每个学生的平均分。(2)计算每门课的平均分。(3)找出12个分数中最高分数所对应的学生和课程。

【项目目的】

(1)掌握函数的定义和调用。

(2)掌握全局变量的使用。

【技术要点】

学生成绩可定义成全局的二维数组,这样自定义函数可以直接使用,而不需要进行参数的传递。程序代码:

运行结果:

项目3.(选做)

10

1!

n

n =

∑(即求1!2!3!10!

++++

K)(阶乘要求使用递归函数来实现,程序代码和运行结果可写在指导书背面)

实验七指针

班级学号姓名成绩

项目1.使用指针参数交换两个变量值

【项目说明】

用函数实现两个变量值的交换,使其在主调函数和被调函数中的值一致,并且返回这两个变量的和以及乘积。要求用指针变量作为函数参数。

【项目目的】

(1)熟悉如何定义指针变量,掌握将指针变量作为函数参数的方法。

(2)掌握通过指针参数由被调函数向主调函数传递多个值的方法。

【技术要点】

由于变量的值始终存放在内存单元中,因此,要交换两个变量的值,只需交换这两个

变量对应的存储单元的值即可,这就需要知道两个变量的地址。也就是说,需要保证主调

函数与被调函数中所要交换的两个数的内存单元是同一内存单元,即传递的参数是内存单

元的地址,而不是内存单元中的值。

程序代码:

运行结果:

项目2. 数组的排序和的插入

【项目目的】

(1)熟悉如何定义指针变量,掌握将指针变量指向一维数组元素的方法。

(2)掌握如何对数组进行排序。

(3)掌握如何在一个有序的数列中查找合适的位置。

(4)掌握如何将一个数插入到一个有序数列中。

【技术要点】

(1)排序可采用冒泡法或者选择法。

(2)有序数组中插入一个数的关键是找到该数据插入的位置,然后将插入位置及其后的所有元素均后移一位,在空出的位置放入待插入的数据。例如,在 13、27、38、49、65、76、97 这列有序数据中插入 53 这个数,成为新的有序数列 13、27、38、49、53、65、76、97。

(4)定义数组时多开辟一个存储单元,用于存放待插入的数据。

程序代码:

运行结果:

项目3.(选做)(程序代码和运行结果可写在指导书背面)

编写函数 int find(int *p,int n,int x),在指针 p 所指的数组中查找整型数 x,如果 x 在数组中,则该函数返回 1,否则返回 0。n 为数组的大小。编写主函数测试之。

C语言程序设计实验报告参考答案

长沙理工大学C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述四、程序清单 1.编写程序实现在屏幕上显示以下结果: Thedressislong Theshoesarebig Thetrousersareblack 答案: #include main() { printf("Thedressislong\n"); printf("Theshoesarebig\n"); printf("Thetrousersareblack\n"); } 2.改错题(将正确程序写在指定位置) 正确的程序为: #include main() {

printf("商品名称价格\n"); printf("TCL电视机¥7600\n"); printf("美的空调¥2000\n"); printf("SunRose键盘¥50.5\n"); } 2.编写程序:a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 答案: #include main() { inta,b,c,x,y; a=150; b=20; c=45; x=a/b; y=a/c; printf("a/b的商=%d\n",x);

printf("a/c的商=%d\n",y); x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } 4.设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符) 答案: #include main() { inta,b,c; a=0; b=-10; c=(a>b)?b:a; printf("c=%d\n",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语言》实验指导书 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语言程序设计实验与习题答案

2.程序填空 (1)以下程序的功能是计算1~50之间能被7整除的整数之和。 #include void main() {int i,sum= 0; for(i=1;50;i++) if(i%7==0) sum+=i; printf("sum=%d\n",sum); } (2) 下面程序接收来自键盘的输入,直到输入+Z(值为-1)键为止。这些字符被原样输出,但若有连续一个以上的空格时只输出一个空格。请填空。 #include void main() {char cx; char front=’’; while ((cx=getchar())!=’\n’) {if (cx!=’’) putchar(cx); if (cx= =’’) if (front!=’’) putchar(cx); front=cx; } } 3.程序改错 (1)下列程序的功能是求1+3+5+…99的和。

#include void main( ) { int s,i; ★//int s=0,i; i=1; while(i<=99)s=s+i;★//{s=s+i;i++;} printf("1+3+5+…99的和是:%d\n",s); } (2)下面程序的功能是输入一个正整数,判断是否是素数,若 为素数输出1,否则输出0。 #include void main() { int i,x,y=0; ★//y=1 scanf("%d",&x); for(i=2;i<=x/2&&y;i++) if ((x%i)!=0) y=0; ★//x%i==0 printf("%d\n",y); } 4.设计性实验 (1)题 /* 方法(1)精度控制*/ #include

C实验指导书答案

篇一:c语言程序设计实验指导书课后答案 实验一 (1)编程求37+29的值,实习vc环境。 #include<stdio.h> void main() { int a,b,sum; a=37; b=29; sum=a+b; printf(sum=%d,sum); } (2)从键盘输入三个整数,求出最大数并输出。 #include<stdio.h> void main() { int a,b,c,y; int max(int x,int y); printf(input a,b,and c:); scanf(%d,%d,%d,&a,&b,&c); y=max(a,b); y=max(y,c); printf(\nmax=%d\n,y); } int max(int x,int y) { int z; if(x>y) z=x; else z=y; return(z); } (3)通过上机实践,运行下列程序并分析输出结果。 a 程序代码 #include<stdio.h> void main() { char ch=a; printf(%c对应的ascii码是:%d\n,ch,ch); } 程序输出结果:a对应的asc||码是:97b 程序代码 #include<stdio.h> void main() { int a=168;

float b=123.456; float x=35.567,y; printf(a=%5d\n,a); printf(a=%-5d\n,a); printf(b=%6.2f\n,b); printf(b=%e\n,b); y=(int)(x*100+0.5)/100.0; printf(x=f,y=%f\n,x,y); } 程序输出结果: a=168 a=168 b=123.46b=1.234560e+002 x=f,y=35.567001 c程序代码 #include<stdio.h> void main() { int a=168; printf(十进制数%d对应的八进制数是%o\n,a,a); printf(十进制数%d对应的十六进制数是%x\n,a,a); } 程序输出结果: 十进制数168对应的八进制数是250 十进制数168对应的十六进制数是a8 实验二 2.1顺序结构 2.1.1已知a=1.5,b=5.3,c=2.9,计算s=??2 -4ac的结果并输出。 #include<stdio.h> void main() { float a,b,c,s; a=1.5; b=5.3; c=2.9; s=b*b-4*a*c; printf(s的值是%f\n,s); } 2.1.2输入某学生的三个科目的期末考试成绩,计算出该学生的成绩总分和平均分。#include <stdio.h> void main() { int math,english,c_program; float sum ,average;

C语言程序设计实验报告(数组)

C语言程序设计实验报告(数组) 1实验目的 (1)熟练掌握一维数组,二维数组的定义,初始化和输入、输出方法; (2)熟练掌握字符数组和字符串函数的使用; (3)掌握与数组有关的常用算法(查找、排序等)。 2实验内容 编写函数catStr(char str1[],char str2[])用于进行两个字符串的连接,编写函数lenStr(char str[])用于统计一个字符串的长度,并在主函数中调用。 要求: 1、不允许用strcat()和strlen()字符处理库函数; 2、在主函数以直接初始化的方式输入两个字符串str1和str2.调用函数 strlen()计算并返回两个字符串的长度; 3、调用函数catstr()连接两个字符串(将str2连接在str1后面); 4、调用函数lenstr()计算并返回连接后字符串的长度; 5、在主函数中输入两个原始的字符串及几个字符串的长度,以及处理后字 符串及其长度。

3算法描述流程图

4源程序 #include #include void catStr(char str1[],char str2[]) { int i,j; for (i=0;str1[i]!='\0';i++); for(j=0;str2[j]!='\0';j++) str1[i+j]=str2[j]; str1[i+j]='\0'; } lenStr(char m[] ) {int i;

for (i=0;m[i]!='\0';i++); printf("%d",i); } void main() {char s1[50]="forever",s2[50]="more"; printf("s1=%s,s2=%s",s1,s2); printf("\ns1的长度:"); lenStr(s1); printf("\ns2的长度:"); lenStr(s2); catStr(s1,s2); printf("\n连接后的字符:"); printf("%s\n",s1); printf("连接后字符的长度:"); lenStr(s1); printf("\n"); } 5测试数据 s1=forever, s2=more 6运行结果 7出现问题及解决方法 在输入程序时,少写了半边引号,调试时发现存在错误,找到了错误并加以改正。无论什么事,细心都是必不可少的,认真是解决问题的关键。 8实验心得 通过本次实验,对于函数的定义和声明,数组以及循环语句有了进一步的认识,掌握了字符数组和字符串函数的使用,以及与数组有关的常用算法。此次实验不是调用strlen()和strcat()函数,而是通过自己设计程序来进行字符串的连接以及计量字符串的长度,由此我学会了如何去理清自己的思路来设计程序。

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语言程序设计》实验指导书 每次实验(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.wendangku.net/doc/1f5311260.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实验指导书

《C程序设计语言》实验指导书 信息教研室编 西南科技大学计算机科学与技术学院 2006年8月

实验一简单的C语言程序 1.1 实验类型:验证型实验2学时 1.2 实验目的 1、熟悉并学习使用C程序编译平台TurboC; 2、掌握如何在编译平台下编辑、编译、连接和运行一个简单的C程序; 3、掌握C语言基础数据类型,熟悉变量定义和赋值方法; 4、学会使用C算术运算符和算术表达式; 1.3 知识点介绍 1、C程序的结构。 一个程序有多个程序单位构成,每一个程序单位作为一个文件,编译系统分别对每个程序文件分别编译,然后连接起来形成可执行程序。 在一个程序单位中包含以下几部分: 预处理命令 全局声明部分 函数(有函数首部和函数体组成),一个C必须有一个(而且只能有一个)main()函数。 2、C数据类型和表达式 C有多种数据类型,数据类型隐含着该类数据的表示、存储及处理规则。 C运算符丰富,使用十分灵活。有运算符和括号将运算对象(操作数)连接起来,构成表达式。表达式中混合运算式要注意运算符的优先级和结合性。此外,不同数据类型运算时,存在类型转换(隐式自动转换和强制转换)。 3、C程序的编写实现 用C语言编写程序——对源程序文件进行编译声称目标文件——对目标文件连接形成可执行程序——运行程序得到结果——分析结果。 1.4 实验内容 题目1 最简单的C程序 按提示的操作步骤,输入下面程序代码,编译连接并执行。

[实验提示] 按照操作步骤创建第一个应用: (1)编辑你的第一个C源程序 (2)保存你的源文件 (3)编译、连接得到可执行程序 (4)改正源程序中的错误 (5)运行你的第一个程序 [思考与扩展] 1、如果程序中大小写输入错误如main 写成Main,结果会怎样? 2、编译运行通过后,本程序输出了一行字符,如果还想输出一行字符: "it’s too easy! " 程序代码该如何修改添加? 提示:注意使用换行控制符’\n’ 题目2 简单应用—求圆柱体的体积 输入下面程序代码,编译运行。 [实验提示] 按照第一题的操作步骤新建工程,输入代码,编译连接,执行程序,输入测试数据分析结果是否正确,如有错误改正后再重新编译连接,直到没有错误为止。 [测试数据] 运行时输入: 5 8

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++调试环境。 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语言实验指导书

实验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语言程序设计实验报告(实验1-12)

文档从网络中收集,已重新整理排版.word版本可编辑.欢迎下载支持. 《C语言程序设计》 实验报告 2013~2014学年第二学期 班级 姓名 学号 指导教师

实验一 实验项目名称:C程序的运行环境和运行C程序的方法 所使用的工具软件及环境:Visual C++ 6.0 一、实验目的: 1.了解在Visual C++ 6.0环境下如何编辑、编译、连接和运行一个C程序; 2.通过运行简单的C程序,初步了解C源程序的特点。 二、预习内容: 教材《C语言程序设计教程》第1章。 三、实验内容: 1. 在Visual C++ 6.0环境下输入并运行下面的程序: #include int main( ) { printf("This is a C program.\n"); return 0; } 2. 在Visual C++ 6.0环境下输入下面的程序(有语法错误),编译、连接、调试该程序,直至程序 无语法错误,然后运行程序,并观察分析运行结果。 #include int main( ) { int a,b,sum a=3; b=4; sun=a+b; print(“%d+%d=%d\n”,a,b,sum); return 0; } 四、实验结果: 1. 运行结果(或截图): This is a C program. Press any key to continue

2. (1) 改正后的源程序: #include int main( ) { int a,b,sum; a=3; b=4; sum=a+b; printf("%d+%d=%d\n",a,b,sum); return 0; } (2) 运行结果(或截图): 3+4=7 五、思考题: 1. 一个C程序上机的步骤有哪些? 答:上级输入与编辑源程序—对原程序进行编译–与库函数链接–运行可执行的目标程序。 2. 组成C程序的基本单位是函数,一个函数包括哪几个部分? 答:一个函数包括两部分:分别为函数头或函数首部和函数体。 成绩指导教师签名 实验二 实验项目名称:数据类型、运算符和表达式 所使用的工具软件及环境:Visual C++ 6.0 一、实验目的: 1.掌握整型、实型与字符型这三种基本类型的概念; 2.掌握常量及变量的使用方法; 3. 掌握基本算术运算符及其表达式的使用方法; 4. 掌握++、--运算符、赋值运算符及其表达式的使用方法。 二、预习内容:

《C语言》实验指导书

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

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

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

C语言程序设计实验-答案

-前言- /*非常感谢度娘以及各位网上C语言高手的支持,才能让敝人完成此文档的整理。 本文档集合了本人、度娘、众网友的力量,其中代码的正确率约为90%(不正确的有标注)。为回报度娘及众网友的帮助,本文档免费下载。 */ /*配“电子科技大学出版社(周信东主编)”的C语言程序设计实验*/ /*努力吧,骚年以及学妹们!*/ /*整理ed by 口玉刀一of GUET.*/ ===================== 实验一C语言程序初步 ===================== 1.---------------------------- 已知a=5,b=4,c=6,求出s并换行 #include"stdio.h" main() { int a,b,c,s; a=5;b=4;c=6; s=(a+b+c)/3; printf("a=%d,b=%d,c=%d\n,s=%d",a,b,c,s); } 2.------------------------------- 输入一个数字求他的平方 #include main() { int r,s; scanf("%d",&r); s=r*r; printf("s=%d\n",s); } 3.-------------------------------- (1) #include main() { printf(" *\n"); printf("***\n"); printf(" *\n"); } (2) #include

{ int v; int a,b,c; //a,b,c aer sides,v is volume of cube a=3;b=3;c=5; v=a*b*c; printf("v=%d\n",v); } ================================= 实验二数据类型、运算符和表达式 ================================= 1. (1)-------------------------------------------------- //总觉得打印结果怪怪的,DO YOU THINK SO? main() { char s1='3',s2='4',s3='5'; int c1=101,c2=102; printf("3%c\t4%c\t5%c\n",s1,s2,s3); //3%c为输出3和%c printf("s1=%d\ts2=%d\ts3=%d\n",s1,s2,s3);//注意哦,s1,s2,s3是char!而%d:输入输出为整形%ld 长整型%hd 短整型%hu无符号整形%u %lu%s:输入输出为字符串%c字符%f:输入输出为浮点型%lf双精度浮点型printf("c1=%d\t~%c\n",c1,c1); //换码符'\t',表示水平制表位(horizeontal tab),它的作用是将光标移到最接近8的倍数的位置 printf("c2=%d\t~%c\n",c2,c2); //注意c1,c2的类型 } (2) //运行结果为8.300000 %是求余数先运算x-y,把结果转换为int型的有利于四则运算 main() { float x=8.3,y=4.2,s; int a=7; s=x+a%5*(int)(x-y)%2/3; printf("s=%f",s); }

C语言程序设计实验指导书(新编)

C语言程序设计实验指导书 桂林电子科技大学信息科技学院

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

实验一 C语言程序初步 数据类型、运算符和表达式 一实验目的 1 熟悉C语言运行环境——Microsoft Visual C++ 6.0中文版。 2 掌握C语言程序的书写格式和C语言程序的结构,初步了解C源程序的特点。 3 掌握C语言上机步骤,了解如何编辑、编译、调试和运行一个C程序的方法。 4 掌握C语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对他们赋值的方法。 5 掌握不同的类型数据之间赋值的规律。 二实验内容 1 C语言上机步骤 ⑴开机,启动Microsoft Visual C++ 6。 ⑵建立工程文件:在“文件”菜单中选择“新建”命令项,在弹出的“新建”对话框的“工程”选项卡中选择“Win32 Console Application”选项,在“工程”框中输入工程文件名sy1,在“c:位置”下拉框中输入或选择文件夹,单击“确定”;在以下弹出的两个对话框中分别单击命令按钮“完成”和“确定”。 ⑶建立C++源文件:在“工程”菜单中选择“添加到工程”—“新建”命令项,在弹出的“新建”对话框的“文件”选项卡中选择“C++ Source File”,在右边的“文件”框中输入文件名sy11后单击“确定”。 ⑷输入源程序:在弹出的文件编辑窗口中输入下面的源程序: #include void main() { printf("Hello,World!\n"); printf("Welcome to the C language world!\n"); printf("Everyone has been waiting for.\n"); } ⑸编译:用“编译”菜单的“编译”命令项对源文件sy11.cpp进行编译,如果程序有语法或语义错误,在屏幕下面的窗口会出现错误信息;这时候要修改源程序、保存后重新编译。直到修改了全部错误,屏幕下面的窗口会出现下面的信息:

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语言程序设计实验报告(实验名称:函数) 1实验目的 (1)掌握函数的定义方法、调用方法、参数说明以及返回值; (2)掌握实参与形参的对应关系,以及参数之间的“值传递”的方式; (3)掌握函数的嵌套调用及递归调用的用的设计方法; (4)在编程过程中加深理解函数调用的程序设计思想。 2实验内容 (1)编写一个函数primeNum(int x),功能是判别一个数是否为素数。 要求: ①在主函数中输入一个整数x(直接赋值或从键盘输入); ②函数类型为空值(void),调用primeNum( )函数后,在函数中输出x是 否为素数的信息,输出格式为“x is a prime number”或”x is not a prime number”; ③分别输入一下数据:0,1,2,5,9,13,59,121,并运行程序,检查 结果是否正确。 (2)编写函数 mulNum(int a,int b),它的功能是用来确定a和b是否是整数倍的关系。如果a是b的整数倍,则函数返回值为1,否则函数返回值为0。 要求: ①在主函数中从键盘输入一对整型数据a和b; ②调用函数后,根据返回值对a和b的关系进行说明。例如,在主函数中输 入:10,5,则输出“10 is a multiple of 5”; ③分别输入下面几组数据进行函数的正确性测试:1与5,5与5,6与2,6 与4,20与4,37与9。

3算法描述流程图 (1)primeNum(int x)(判别一个数是否是素数)函数流程图 ①主函数流程图:

②判断素数函数流程图:

(2)mulNum(int a,int b)(确定a和b是否是整数倍的关系)函数流程图 ①主函数流程图:

相关文档
相关文档 最新文档