c语言应用实例.docx
- 文档编号:4269498
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:38
- 大小:273.78KB
c语言应用实例.docx
《c语言应用实例.docx》由会员分享,可在线阅读,更多相关《c语言应用实例.docx(38页珍藏版)》请在冰点文库上搜索。
c语言应用实例
c语言实验指导
一、课程性质和任务
课程是高职高专计算机类各专业的必修专业基础课,是程序设计入门课程。
本课程的主要任务:
通过对该课程的学习,使学生掌握C语言程序设计的基本知识,程序结构,基本算法及程序设计思想,并培养使用C语言进行程序设计基本能力。
本课程的目的:
使学生掌握程序设计的基本方法及逐步形成正确的程序设计思想,能够熟练地使用C语言进行程序设计并具备调试程序的能力,为后继课程及其他程序设计课程的学习和应用打下基础。
二、课程教学目标
1、掌握C语言的基本词法,熟练掌握C语言程序的基本结构。
2、掌握常量和变量的存储类型及应用;运算符和表达式的应用
3、掌握C语言的五种基本语句;形成正确的程序设计思想,对顺序结构程序要重点掌握,熟练掌握输入输出函数。
4、掌握关系、逻辑表达式的形式和应用;熟练掌握选择结构的思想;掌握IF语句的各种形式和应用;掌握SWITCH语句和BREAK语句的使用,选择结构的嵌套语句。
5、掌握循环结构的思想、流程和执行过程;掌握While循环、Do…While、FOR循环及其应用;掌握循环嵌套的使用;掌握BREAK、CONTINUE及使用。
6、掌握一维数组的定义、引用和应用;掌握二维数组的定义、引用和应用;掌握字符数组及其应用。
7、掌握函数的定义、参数、类型、返回值及参数传递;掌握变量的作用域(局部变量和全局变量)、存储类型;了解内部函数和外部函数及主函数和命令行参数。
8、掌握宏定义的形式(带参数的宏定义、不带参数的宏定义);掌握文件包含的形式和应用;了解条件编译的定义形式和应用。
9、掌握直接存取和间接存取;掌握指针变量的概念和应用;掌握数组与指针、函数与指针之间的关系;了解指向指针的指针。
10、掌握结构体、共用体的概念、存储特点,及应用;了解结构体数组的使用;掌握结构体与数组、指针、函数之间的操作;掌握链表的概念和基本操作。
了解共用体、自定义类型、枚举类型的概念和应用。
11、掌握位运算的基本概念;掌握简单的位运算符及应用
12、掌握文件的基本操作;掌握有关文件操作的函数及其它读写函数。
三、教学内容和要求
第一章c语言概述
实践教学:
属性:
实训
时间:
1学时。
实践教学内容:
实验目的:
熟悉TurboC运行环境、创建c程序文件的过程。
实验内容和步骤:
1.找到TC进入TC集成环境
2.熟悉TC集成环境及其菜单的使用
3.练习掌握TC目录环境的设置
4.在TC环境中编辑如下程序:
5.#include
6.main()
{
printf(“欢迎使用TruboC!
”);/*输出字符串*/
}
7.
将文件保存到Ex1_1.c
8.在TC集成环境中打开Ex1_1.c,试编译、运行,并用F5查看运行结果
设备及生均耗材要求:
计算机机房
实践考核办法:
检查学生程序结构和执行情况,并给出评分。
代码:
第二章数据类型、运算符与表达式
实践教学:
属性:
实训
时间:
1学时。
实践教学内容:
实验目的:
掌握C语言各种基本数据类型的定义方法;掌握C语言中常用的运算符的功能和使用方法;初步了解运算符的优先级别和结合性
实验内容和步骤:
1.编程,利用sizeof()函数,了解C语言各种数据类型所占的存储空间大小,将编写的源程序以文件名ex2_1.c存储,并编译、调试、执行。
代码:
#include
main()
{
printf("intis%d/n",sizeof(int));
printf("floatis%d/n",sizeof(float));
}
2.编程,利用函数sqrt(),求出从键盘输入的任意正整数的平方根。
将编写的源程序以文件名ex2_2.c存储,并编译、调试、执行。
代码:
#include
#include
main()
{
doublea,b;
scanf("%lf",&a);
b=sqrt(a);
printf("%lf",b);
}
3.输入下列源代码,改正其中存在的错误,使其调试通过,记录正常运行结果。
将编写的源程序以文件名ex2_3.c存储
#include“sdtio.h”
main();
{
intyy,mm,dd,
yy=2006;mm=03;dd=12
printf(“你好,今天是%d年%d月%d日”,yy,mm,dd);
}
代码:
#include
main()
{
intyy,mm,dd;
yy=2006,mm=03,dd=12;
printf("你好,今天是%d年%d月%d日",yy,mm,dd);
}
设备及生均耗材要求:
计算机机房
实践考核办法:
检查学生程序结构和执行情况,并给出评分。
第三章最简单的c程序设计
实践教学:
属性:
实训
时间:
学时。
实践教学内容:
实验目的:
熟悉运算符、表达式,掌握标准输入输出函数的适用方法和顺序结构程序设计的一般方法。
实验内容和步骤:
1.编程,要求从键盘按规定的格式输入时间(时:
分:
秒),并将输入的时间在屏幕上显示出来,存入ex3_1.c文件,并编译、调试、运行。
代码:
#include
voidmain()
{
inta,b,c;
scanf("%d:
%d:
%d",&a,&b,&c);
printf("%02d:
%02d:
%02d",a,b,c);
}
2.编程,要求从键盘输入数据,使整型变量a=10,b=8;字符型c1=’A’,c2=’a’;实型变量x=3.1,y=64.54。
并按规定格式输出变量的值。
格式如下。
存入ex3-2.c文件,并编译、调试、运行。
__int___a=__10___b=____8
char_c1=__A,___c2=____a
float___x=_3.1,___y=64.54
代码:
#include
main()
{
inta,b;
charc1,c2;
doublex,y;
a=10,b=8;
c1='A',c2='a';
x=3.1,y=64.54;
printf("%d,%d\n,%c,%c\n,%f,%f\n",a,b,c1,c2,x,y);
}
3.c语言编程求ax2+bx+c=0并分析其结果。
存入ex3_2.c文件,并编译、调试、运行。
代码:
#include
#include
main()
{
floata,b,c,x1,x2,m,n;
scanf("%f,%f,%f",&a,&b,&c);
m=(-b)/(2*a);
n=sqrt(b*b-4*a*c)/(2*a);
x1=m+n;
x2=m-n;
printf("%f,%f\n",x1,x2);
}
设备及生均耗材要求:
计算机机房
实践考核办法:
检查学生程序结构和执行情况,并给出评分。
第四章逻辑运算和判断选取控制
实践教学:
属性:
实训
时间:
学时。
实践教学内容:
实验目的:
掌握if语句的格式与应用,if语句的嵌套格式与应用,条件运算符的作用,Switch语句的格式与应用,Break、continue语句的格式与应用。
实验内容和步骤:
1.完成下面的程序,在空白处填入a,b,c,取a,b,c中最大者赋给max。
存入ex4_1.c文件,并编译、调试、运行。
A.if(a>b&&a>c) B. if(a>b)
max=________ if(a>c)
else max=______p; max=______
if(b>c) else
max=________ max=______max=______
else else
max=________ if(b>c)
max=________
else
A:
max=_________
代码:
#include
#include
main()
{
inta,b,c,max;
scanf("%d,%d,%d",&a,&b,&c);
if(a>b&&a>c)
{
max=a;
}
else
if(b>c)
{
max=b;
}
else
max=c;
printf("%d",max);
}
B:
2.输入a,b,c三个整数,要求将绝对值最大者打印输出。
存入ex4_2.c文件,并编译、调试、运行。
代码:
#include
main()
{
inta,b,c,max;
scanf("%d,%d,%d",&a,&b,&c);
if(fabs(a)>fabs(b)&&fabs(a)>fabs(c))
{
max=a;
}
else
if(fabs(b)>fabs(c))
{
max=b;
}
else
max=c;
printf("%d",max);
}
intm;fabs(intm)
{
if(m>=0)
{
m=m;
}
else
m=-m;
return(m);
}
3.输入一个整数,判断该数的奇偶性。
(输出相应的标志even-偶数odd-奇数,请记住这两个单词)自已写出程序代码。
存入ex4_3.c文件,并编译、调试、运行。
代码:
#include
#include
main()
{
intx;
scanf("%d",&x);
if(0==x%2)
{
printf("even-偶数\n");
}
else
printf("odd-奇数\n");
}
4.给定一个正整数,判断它是否能同时被3、5、7整除。
存入ex4_4.c文件,并编译、调试、运行。
代码:
#include
main()
{
intx;
scanf("%d",&x);
if(x%3==0&&x%5==0&&x%7==0)
{
printf("可以同时被3,5,7整除");
}
else
printf("不可以同时被3,5,7整除");
}
设备及生均耗材要求:
计算机机房
实践考核办法:
检查学生程序结构和执行情况,并给出评分。
第五章循环控制
实践教学:
属性:
实训
时间:
学时。
实践教学内容:
实验目的:
掌握循环结构的三种形式:
当型循环结构(while)、直到型循环结构(do_while)、次数型结构(for),以及三种形式的相互转换,掌握break语句、continue语句的格式、功能、作用。
实验内容和步骤:
1. 编程,键盘上输入10个数,求其平均值。
存入ex5_1.c文件,并编译、调试、运行。
代码:
#include
main()
{
inta[10],i,sum=0;
floatm;
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
sum+=a[i];
}
m=sum/10;
printf("%f",m);
}
2. 编程,输出1—100之间,其数的平方在150—200之间的第一个数,如找到,退出循环,输出该数的平方。
反之,继续查找。
存入ex5_2.c文件,并编译、调试、运行。
代码:
#include
main()
{
inti;
for(i=1;i<=100;i++)
{
if(i*i<=200&&i*i>=150)
{
printf("%d",i*i);
break;
}
}
}
3. 编程,输入一正整数,按从低到高的顺序依次输出其各位数字的值,例如:
输入8546输出8 5 4 6。
存入ex5_3.c文件,并编译、调试、运行。
#include
voidmain()
{
inti=0,j,a[20],n;
scanf("%d",&n);
while(n>0)
{
a[i]=n%10;
n=n/10;
i++;
}
for(j=i-1;j>=0;j--)
printf("%d",a[j]);
printf("\n");
}
4.编程,从键盘上输入若干正整数,求其中最大数和最小数。
输入的数以0为中止标志。
存入ex5_4.c文件,并编译、调试、运行。
#include
voidmain()
{
intmax,min,n;
scanf("%d",&n);
max=n;min=n;
while(n!
=0)
{
if(max max=n; if(min>n) min=n; scanf("%d",&n); } printf("最大值是: %d最小值是: %d\n",max,min); } 设备及生均耗材要求: 计算机机房 实践考核办法: 检查学生程序结构和执行情况,并给出评分。 第六章数组 实践教学: 属性: 实训 时间: 学时。 实践教学内容: 实验目的: 掌握一维数组和二位数组的定义、初始化、输入、输出方法;掌握字符数组的定义、初始化,存放字符串的字符数组的定义、初始化、输入、输出方法,掌握常用字符串处理函数的格式、功能和使用方法。 实验内容和步骤: 1、编程,求2个3×3矩阵对应元素之和,并存入矩阵C中,然后输出矩阵C。 存入ex6_1.c文件,并编译、调试、运行。 #include main() { inta[3][3]={{1,1,1},{1,1,1},{1,1,1}},b[3][3]={{2,2,2},{2,2,2},{2,2,2}}; intc[3][3],i,j; for(i=0;i<3;i++) { for(j=0;j<3;j++) { c[i][j]=a[i][j]+b[i][j]; printf("%3d",c[i][j]); } printf("\n"); } } 2、 编一个程序,输入单精度型一维数组a[10],计算并输出a数组中所有元素的平均值。 存入ex6_2.c文件,并编译、调试、运行。 代码: #include main() { floata[10],sum=0; inti; floatm; for(i=0;i<10;i++) { scanf("%f",&a[i]); sum+=a[i]; } m=sum/10; printf("%f",m); } 3、 编一个程序,输入一个字符串,将其中所有大写字母改为小写字母,而所有小写字母全部改为大写字母,然后输出。 存入ex6_3.c文件,并编译、调试、运行。 代码: #include main() chara[10]; inti; for(i=0;i<10;i++) scanf("%c",&a[i]); for(i=0;i<10;i++) { if(a[i]>64&&a[i]<91) a[i]=a[i]+32; else if(a[i]>96&&a[i]<123) a[i]=a[i]-32; } for(i=0;i<10;i++) printf("%c",a[i]); printf("\n"); } 4、编一个程序,输入这50个学生的二科成绩,计算并输出每科成绩的平均分。 存入ex6_4.c文件,并编译、调试、运行。 代码: #include main() { intm,n; floata[6][2]={0}; m=0,n=0; for(m=0;m<5;m++) for(n=0;n<2;n++) scanf("%f",&a[m][n]); for(n=0;n<2;n++) { for(m=0;m<5;m++) a[5][n]+=a[m][n]; a[5][n]/=5; } for(m=0;m<6;m++) { for(n=0;n<2;n++) printf("%5.1f",a[m][n]); printf("\n"); } 设备及生均耗材要求: 计算机机房 实践考核办法: 检查学生程序结构和执行情况,并给出评分。 第七章函数 实践教学: 属性: 实训 时间: 学时。 实践教学内容: 实验目的: 掌握自定义函数的概念、定义格式、调用方法;掌握函数的形式参数、实际参数和函数的返回值;掌握函数程序设计的一般方法和应用。 掌握函数与数组之间的关系和操作,熟悉数组作为参数传递应该注意的问题;函数的嵌套、递归调用方法和应用;局部变量、全局变量的定义和使用;常用系统函数的使用。 实验内容和步骤: 1、编程,计算10名学生1门课成绩的平均分。 (程序设计要求: 用自定义函数来实现,注意自定义函数的形式及参数之间的传递,用主函数来调用自定义函数实现功能。 ),存入ex7_1.c文件,并编译、调试、运行。 代码: #include"stdio.h" floatfun(floata[]) { inti; floatsum=0; for(i=0;a[i]! ='\0';i++) { sum+=a[i]; } returnsum/i; } voidmain() { floata[11]={67,45,98,87,88,85,65,54,45,42}; printf("%g",fun(a)); } 2、编程,利用自定义函数编写程序,实现将一个十进制数转换成二进制数。 存入ex7_2.c文件,并编译、调试、运行。 代码: #include"stdio.h" main() { inta,i,n=1,m=0; scanf("%d",&a); for(i=0;;i++) { if(a%2==0) m+=0*n; else m+=1*n; n*=10; if(a/2==0) break; a=a/2; } printf("%d\n",m); } 3、编程,输入一个数组,利用自定义函数求数组的平均数(用数组做参数)。 存入ex7_3.c文件,并编译、调试、运行。 代码: #include main() { floatave(floatx[10]); inti; floata[10],av; av=ave(a); printf("%f",av); } floatave(floatx[10]) { floatsum=0,a[10]; inti=0; for(i=0;i<10;i++) scanf("%f",&a[i]); for(i=0;i<10;i++) sum+=a[i]; return(sum/10); } 4、编程,自定义函数countc的功能是统计array数组中大写字母的个数,并返回大写字母的数目。 存入ex7_4.c文件,并编译、调试、运行。 代码: #include main() { charcountc(chararray[]); chara[10]; intm; m=countc(a); printf("数组中大写字母的个数为%d\n",m); } charcountc(chararray[]) { inti,n=0; chara[10]; for(i=0;i<10;i++) scanf("%c",&a[i]); for(i=0;i<10;i++) if(a[i]>64&&a[i]<91) n++; return(n); } 5、编程,以下函数p的功能是用递归方法计算xX的n阶勒让德多项式的值。 已有调用语句p(n,x);请编写p函数。 存入ex7_5.c文件,并编译、调试、运行。 递归公式如下: 代码: #include"stdio.h" main() { floatp(intn,floatx); floatb,c; inta; scanf("%d%f",&a,&c); b=p(a,c); printf("%f\n",b); } floatp(intn,floatx) { floatd; if(n==0) d=1; else if(n==1) d=x; else d=((2*n-1)*x*p((n-1),x)-(n-1)*p((n-2),x))/n; return(d); } 设备及生均耗材要求: 计算机机房 实践考核办法: 检查学生程序结构和执行情况,并给出评分。 第八章编译预处理 实践教学: 属性: 实训 时间: 学时。 实践教学内容: 实验目的: 掌握宏定义的形式(带参数的宏定义、不带参数的宏定义);掌握文件包含的形式和应用;了解条件编译的定义形式和应用。 实验内容和步骤: 1、编程,通过用带参的宏定义从3个数中找出最大值。 主函数完成数据输入、宏调用及数据输出。 存入ex8_1.c文件,并编译、调试、运行。 代码: #include main() #definemax(a,b)(a>b)? a: b { inta,b,c,d; scanf("%d%d%d",&a,&b,&c); d=max(a,b); d=max(c,d); printf("%d\n",d); } 2、 编一个头文件,将经常使用的数学函数、字符处理函数及圆周率等符号常量事先定义好。 以便以后
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 应用 实例
![提示](https://static.bingdoc.com/images/bang_tan.gif)