c语言应用实例.docx

上传人:b****2 文档编号:23228643 上传时间:2023-05-15 格式:DOCX 页数:38 大小:286.16KB
下载 相关 举报
c语言应用实例.docx_第1页
第1页 / 共38页
c语言应用实例.docx_第2页
第2页 / 共38页
c语言应用实例.docx_第3页
第3页 / 共38页
c语言应用实例.docx_第4页
第4页 / 共38页
c语言应用实例.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

c语言应用实例.docx

《c语言应用实例.docx》由会员分享,可在线阅读,更多相关《c语言应用实例.docx(38页珍藏版)》请在冰豆网上搜索。

c语言应用实例.docx

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、  编一个头文件,将经常使用的数学函数、字符处理函数及圆周率等符号常量事先定义好。

以便以后调用。

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

当前位置:首页 > 自然科学 > 物理

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

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