徐州工程学院C语言上机实验报告.docx

上传人:b****8 文档编号:23740728 上传时间:2023-05-20 格式:DOCX 页数:24 大小:247.58KB
下载 相关 举报
徐州工程学院C语言上机实验报告.docx_第1页
第1页 / 共24页
徐州工程学院C语言上机实验报告.docx_第2页
第2页 / 共24页
徐州工程学院C语言上机实验报告.docx_第3页
第3页 / 共24页
徐州工程学院C语言上机实验报告.docx_第4页
第4页 / 共24页
徐州工程学院C语言上机实验报告.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

徐州工程学院C语言上机实验报告.docx

《徐州工程学院C语言上机实验报告.docx》由会员分享,可在线阅读,更多相关《徐州工程学院C语言上机实验报告.docx(24页珍藏版)》请在冰豆网上搜索。

徐州工程学院C语言上机实验报告.docx

徐州工程学院C语言上机实验报告

徐州工程学院

管理学院实验报告

实验课程名称:

C语言程序设计

实验地点:

南主楼七楼机房

2013—2014学年

(二)学期

2014年2月至2014年6月

专业信息管理与信息系统

班级13信管2

学生姓名徐志鹏

学号***********

 

指导老师周渠

第一章  C语言程序设计概述

 

1.1  实验目的

熟悉C语言,学会编写简单的C语言程序 。

1.2  实验课时  

上机实验:

2个课时

1.3  实验基本内容 

1、编写程序,计算两数之和,两数之差。

 

程序:

 #include

voidmain()

{

intm,n,sum1=0,sum2=0;

m=10;n=12;

sum1=m+n;

sum2=m-n;

printf("sum1is%d\n",sum1);

printf("sum2is%d\n",sum2);

getch();

}

运行结果:

  

 

2、编写程序,计算两个圆面积之差。

程序:

#include

main()

{

intm=4,n=2;

floata=3.1415,sum;

sum=(m*m*a)-(n*n*a);

printf("%f",sum);

getch();

}

运行结果:

3、编写程序,计算两数相乘相除。

程序:

 #include

voidmain()

{

intm,n,sum=0;

m=12;n=6;

sum=m/n;

printf("sumis%d\n",sum);

getch();

}

运行结果:

 

第二章  顺序结构程序设计

 

1.1  实验目的

掌握C语言的数据类型,基本语句;

1.2  实验课时  

上机实验:

2个课时

1.3  实验基本内容 

1、编写程序,设计一个程序实现英文字母大小写转换。

程序:

#include

main()

{

chara;

a=getchar();

if(a>='A'&&a<='Z')

a+=32;

elseif(a>='a'&&a<='z')

a-=32;

putchar(a);

getch();

}

运行结果:

2、编写程序,编程计算存款利息,设本金为a,存款期限为n,年率为p。

程序:

#include

#include

main()

{

floata,n,p,m,sum;

scanf("%f%f%f",&a,&n,&p);

m=pow(1+p,n);/*pow的头文件必须是#include*/

sum=a*m-a;

printf("%f",sum);

getch();

}

运行结果:

第三章  选择结构程序设计

 

1.1  实验目的

掌握关系运算符合关系表达式、逻辑运算符和逻辑表达式。

掌握if等一系列语句。

1.2  实验课时  

上机实验:

2个课时

1.3  实验基本内容 

1、有一段分段函数,请编写程序:

输入x,输出y。

程序:

#include

main()

{

floatx,y;

scanf("%f",&x);

if(x<1)

{y=x;}

if(1<=x&&x<10)

{y=2*x-1;}

if(x>=10)

{y=3*x-1;}

printf("%f",y);

getch();

}

运行结果:

2、输入四个整数,要求按大小顺序排列。

程序:

#include

voidmain()

{

inta,b,c,d,t;

printf("请输入四个整数");

scanf("%d%d%d%d",&a,&b,&c,&d);

if(a>b)

{t=a;a=b;b=t;}

if(a>c)

{t=a;a=c;c=t;}

if(a>d)

{t=a;a=d;d=t;}

if(b>c)

{t=b;b=c;c=t;}

if(b>d)

{t=b;b=d;d=t;}

if(c>d)

{t=c;c=d;d=t;}

printf("%ld,%ld,%ld,%ld\n",a,b,c,d);

}

运行结果:

第四章  循环结构程序设计

 

1.1实验目的

掌握for语句;while语句;do-while语句;循环语句的嵌套使用;break和continue语句。

1.2  实验课时  

上机实验:

2个课时

1.3  实验基本内容 

1、求1000以内的所有完全数。

程序:

#include

voidmain()

{

inti,j;

intsum;

for(i=2;i<1000;i++)

{

sum=0;

for(j=1;j

if(i%j==0)

sum=sum+j;

if(sum==i)

printf("%d是完数\n",sum);

}

}

运行结果:

2、用循环语句输出数字金字塔。

程序:

#include

voidmain()

{

inti,j,n;

for(i=1;i<=9;i++)

{

for(n=1;n<=9-i;n++)

printf("");

for(j=1;j

printf("%d",j);

for(j=i;j>=1;j--)

printf("%d",j);

printf("\n");

}

printf("\n");

}

运行结果:

3、编写程序,求出1000以内的水仙花数。

程序:

#include

voidmain()

{

intn,i,j,k;//"水仙花数"是一个三位数的数如153=1*1*1+5*5*5+3*3*3

printf("水仙花数有:

");

for(n=100;n<1000;n++)//求水仙花数的过程,i,j,k分别存放这个三位数中的每一位数

{

i=n/100;

j=(n-i*100)/10;

k=n-i*100-j*10;

if(n==i*i*i+j*j*j+k*k*k)//找出每一位然后判断它每一位数的立方之和是否等于原数,是就输出

printf("%d",n);

}

printf("\n");

}

运行结果:

 

4、编写程序,分别用while循环语句和for循环语句,求出1到100之和。

程序:

#include

main()

{

inti,sum=0;

i=1;

while(i<=100)

{sum=sum+i;i++;}

printf("%d/n",sum);

}

运行结果:

程序:

#include

main()

{

inti,sum=0;

for(i=1;i<=100;i++)

sum=sum+i;

printf("%d/n",sum);

}

运行结果:

5、编写程序,求出100以内的偶数和。

程序:

#include

voidmain()

{

inti,sum=0;

for(i=1;i<=100;i++)

if(i%2==0)

sum=sum+i;

printf("%d\n",sum);

}

运行结果:

 

第五章  数组

 

1.2实验目的

数组的基本概念;一维数组的应用;二维数组的应用;字符数组和字符串数组;

1.2  实验课时  

上机实验:

6个课时

1.3  实验基本内容 

1、编写程序,利用for语句嵌套计算1+(1+2)+(1+2+3)+...+(1+2+...+10)。

 

程序:

#include

main()

{

inta,b,sum1=0;

for(a=1;a<=10;a++)

{

for(b=1;b<=a;b++)

sum1=sum1+b;

}

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

getch();

}

运行结果:

2、编写程序,利用for语句嵌套计算1!

+2!

+......+10!

 

程序:

#include

voidmain()

{

inti,a=1;

intsum=0;

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

{

a=a*i;

sum=sum+a;

}

printf("1到10的阶乘和是%d\n",sum);

}

运行结果:

3、编写程序,列出乘法口诀表。

程序:

#include

main()

{

inti,j;

for(i=1;i<=9;i++)

{

for(j=1;j<=i;j++)

{

printf("%d*%d=%d\t",i,j,i*j);

}

printf("\n");

}

}

运算结果:

 

第六章  函数

 

1.3实验目的

掌握函数的定义方法,理解函数的类型和返回值,掌握函数生命的方法,掌握局部变量、全局变量、静态变量的作用域和生存期。

1.2  实验课时  

上机实验:

6个课时

1.4实验基本内容 

1、编写程序,用冒泡排序法实现数组排序。

程序:

#include

main()

{

inta[5];

inti;

intj;

intk;

inttemp;

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

scanf("%d",&a[k]);

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

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

{

if(a[j]>a[j+1])

{

temp=a[j+1];

a[j+1]=a[j];

a[j]=temp;

}

}

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

{

printf("%d",a[i]);

}

}

 

运行结果:

2、编写程序,设计调用函数,输入两个数,实现加减乘除。

程序:

#include

m()

{

inta,b,sum;

scanf("%d%d",&a,&b);

sum=a+b;

printf("%d\n",sum);

}

n()

{

inta,b,sum;

scanf("%d%d",&a,&b);

sum=a-b;

printf("%d\n",sum);

}

s()

{

inta,b,sum;

scanf("%d%d",&a,&b);

sum=a*b;

printf("%d\n",sum);

}

 

w()

{

inta,b,sum;

scanf("%d%d",&a,&b);

sum=a/b;

printf("%d\n",sum);

}

 

main()

{

intx;

scanf("%d",&x);

while

(1)

{if(x==1)

m();

if(x==2)

n();

if(x==3)

s();

if(x==4)

w();

getch();}

}

运行结果:

第七章 指针

 

1.5实验目的

理解指针的概念、初始化及使用;掌握指针变量、数组指针的概念与使用。

1.2  实验课时  

上机实验:

6个课时

1.3  实验基本内容 

1、编写程序,将一个3*3的矩阵转置,用一个功能函数实现。

程序:

#include

main()

{

inti,j,t;

inta[3][3]={1,2,3,4,5,6,7,8,9};

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

{

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

printf("%3d",a[i][j]);

printf("\n");

}

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

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

{

t=a[i][j];

a[i][j]=a[j][i];

a[j][i]=t;

}

printf("转置后的矩阵为:

\n");

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

{

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

printf("%3d",a[i][j]);

printf("\n");

}

}

运行结果:

2、编写程序,利用指针方法实现,输入3个整数,按从大到小排序。

程序:

#include

intf1(int*p1,int*p2,int*p3)

{

inta,b,c;

if(*p1>*p2)

{

b=*p2;

a=*p1;

}

else

{

a=*p2;

b=*p1;

}

if(*p3>a)

{

c=b;

b=a;

a=*p3;

}elseif(*p3>b)

{

c=b;

b=*p3;

}

elsec=*p3;

*p1=a;*p2=b;*p3=c;

}

voidmain()

{

inta,b,c,*pa,*pb,*pc;

scanf("%d%d%d",&a,&b,&c);

pa=&a;

pb=&b;

pc=&c;

f1(pa,pb,pc);

printf("%d%d%d",a,b,c);

}

运行结果:

 

第八章  结构体、共用体与枚举

 

1.6实验目的

掌握结构体类型的定义、结构体数组的定义、链表的定义、共用体与结构体;枚举类型;用typedef定义类型。

1.2  实验课时  

上机实验:

6个课时

1.3  实验基本内容 

1、编写程序,定义一个结构体变量(包括年、月、日)。

编写一个函数days,计算该日期在本年中是第几天(注意闰年问题)。

由主函数将年月日传递给days函数,计算之后,将结果传回到主函数输出。

程序:

#include

intdays(structdatetime);

main()

{

intcount_day;

structdatetimedate;

printf("请输入年月日:

\n");

scanf("%d%d%d",&date.year,&date.month,&date.day);

count_day=days(date);

printf("日期%d/%2d/%2d是%d的第%d天\n",date.year,date.month,date.day,date.year,count_day);

}

intdays(structdatetimedate)

{

intresult=0;

intyear=date.year,month=date.month,day=date.day;

switch(month-1)

{

case12:

result+=31;

case11:

result+=30;

case10:

result+=31;

case9:

result+=30;

case8:

result+=31;

case7:

result+=31;

case6:

result+=30;

case5:

result+=31;

case4:

result+=30;

case3:

result+=31;

case2:

{if(year%400==0||year%100!

=0&&year%4==0)

result+=28;

else

result+=29;}

case1:

result+=31;

}

result+=day;//加上对应的月份的天数returnresult;

}

运行结果:

2、编写程序,共用体。

程序:

#include

main()

{

uniondata

{

inta;

floatb;

doublec;

chard;

}mm;

mm.a=6;

printf("%d\n",mm.a);

mm.c=67.2;

printf("%5.1lf\n",mm.c);

mm.d='W';

mm.b=34.2;

printf("%5.1f,%c\n",mm.b,mm.d);

}

运行结果:

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

当前位置:首页 > 法律文书 > 调解书

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

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