电子科大C语言实验报告.docVIP

  • 30
  • 0
  • 约5.04千字
  • 约 11页
  • 2017-04-04 发布于重庆
  • 举报
电子科大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 【代码】 #includestdio.h void main() { int i; long sum=0; long jc(int n);/*jc阶乘声明*/ for (i=1;i11;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 【代码】 #includestdio.h 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 【代码】 #includestdio.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]a[i]) { 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语言数据类型、变量的声明及使用,运算符与表达式等概念,条件、循环等基本程序结构的应用,数组的定义与使用,排序算法,函数的编写与应用的合理运用,成功实现了各个功能,得出了正确结果。 心得体会: 在实验之前自己只是限于书本上的知识,直到今

文档评论(0)

1亿VIP精品文档

相关文档