电子科大c语言专业提交1,电子科大C语言实验报告.doc

电子科大C语言实验报告

计算机专业类课程

实验报告课程名称:程序设计基础

学  院:计算机科学与工程学院

专  业:计算机科学与技术

学生姓名:

学  号:

指导教师:阎炜日  期:   2012年  12月  15日电 子 科 技 大 学

实 验 报 告

实验一

一、实验名称:C语言基础实验

二、实验学时:4 学时

三、实验内容和目的:

目的:

熟练掌握C语言数据类型、变量的声明及使用,运算符与表达式等基本概念。

熟练掌握条件、循环等基本程序结构的应用。

熟练掌握数组的定义与使用,掌握排序算法。

熟练掌握函数的编写与应用。

内容:

1、编写程序,计算以下公式:

2、在100和1000之间,有多少个其数字之和等于9而且该数可被5整除的整数?

4、编写程序。功能:在键盘上输入N个整数,保存在数组中,并对该数组进行排序。(从小到大)

分析:(1)C中数组长度必须是确定大小,即指定N的值,可在实验中指定N=10。

(2)排序的方法有多种,如冒泡排序、选择排序等,可任选一种。

四、实验原理:

1.1:递归,函数的声明和使用

1.2:取出每位数字进行处理,累加思想

1.4:冒泡排序,数组的定义和使用

五、实验器材(设备、元器件)

PC微机一台

实验步骤:

1、编写源程序;

保存为一个以后缀为c的文件;

连接目标程序,产生可执行程序;

调试程序直至成功;

5、保存程序,记录数据内容。

七、实验数据及结果分析:

1.1

【代码】

#include"stdio.h"

void main()

{ int i;

long sum=0;

long jc(int n);/*jc阶乘声明*/

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

sum=sum+jc(i);/*sum累加*/

printf("the sum of 1! to 10! is:%d",sum);

}

long jc(int n)/*递归定义jc函数*/

{

if (n==1) return(1);

return(n*jc(n-1));

}

【输入数据】 无。

【输出数据】 the sum of 1! To 10! is :4037913

【截图】

【结果分析】 结果正确,和人工算出来一致。

1.2

【代码】

#include

void main()

{ int i,a,b,c,sum=0;

for (i=100;i<=999;i++)/*i为循环变量*/

{

a=i%10;/*a是个位*/

b=(i/10)%10;/*b是十位*/

c=i/100;/*c是百位*/

if ((a+b+c==9)&&(i%5==0))

sum++;/*sum累加*/

}

printf("the result is:%d",sum);

}

【输入数据】 无。

【输出数据】 the result is :13

【截图】

【结果分析】 结果正确,和人工算出来一致。

1.4

【代码】

#include"stdio.h"

#define N 10/*输入数的个数*/

void main()

{

long a[N+1],tp;

int i,j;

printf("input %d integers please:\n",N);

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

scanf("%d",&a[i]);/*读入数组*/

for (i=1;i<=N;i++)/*冒泡排序*/

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

if (a[j]

{

tp=a[j];

a[j]=a[i];

a[i]=tp;

}

printf("after sort(from small to large):\n");

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

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

}

【输入数据】 120 410 214 5891 92193 0 -12321 42145 2132 21321

【输出数据】 after sort(from small to large):

-12321 0 120 214 410 2132 5891 21321 42145 92193

【截图】

【结果分析】实现了要求的功能,与人工计算一致。

实验结论、心得体会和改进建议:

实验结论:

通过对C语言数据类型、变量的声明及使用,运算符与表达式等概念,条件、循环等基本程序结构的应用,数组的定义与使用,排序算法,函数的编写与应用的合理运用,成功实现了各个功能,得出了正确结果。

心得

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值