《程序设计c实验报告--江苏理工学院》由会员分享,可在线阅读,更多相关《程序设计c实验报告--江苏理工学院(20页珍藏版)》请在金锄头文库上搜索。
1、程序设计(程序设计(C) 实验报告实验报告2014 2015 学年学年 第二学期第二学期院院 系:系: . . 班班 级:级: . . 学学 号:号: . . 姓姓 名:名: . .江苏理工学院江苏理工学院计算机工程学院计算机工程学院 计算机应用基础教研室计算机应用基础教研室 实验实验 1 1题目题目选择结构程序设计 实验实验 学时学时2 2 学时学时实验实验 目的目的1. 了解 C 语言表示逻辑量的方法(以 0 代表“假” ,以非 0 代表“真” ) ; 2. 学会正确使用逻辑运算符和逻辑表达式; 3. 熟练掌握 if 语句的使用(包括 if 语句的嵌套) ; 4. 熟练掌握多分支选择语句s
2、witch 语句; 5. 结合程序掌握一些简单的方法; 6. 学习调试程序的方法。实验实验 内容内容 与与 题目题目 要求要求1.有一函数:x (xint main()int x,y;printf(“输入 x:“); scanf(“%d“,if(xint main()float score;char grade;printf(“请输入学生成绩:“);scanf(“%f“,while(score100|scoreint main()int m;printf(“请输入月份:n“);scanf(“%d“,printf(“m=%dn“,m); while(m12|mint main()int n,i;
3、float sum=0;printf(“请输入 n:n“);scanf(“%d“, if(nint main()int i,j,k;int m=0;printf(“请输出 1,2,3,4 组成的无重复三位数:n“);for(i=1;iint main()int x;printf(“请输入一个数字:“);scanf(“%d“,printf(“反序的数字:“);while(x!=0)printf(“%d“,x%10); x/=10;printf(“n“);运行结果贴图:心得心得 体会体会While 与 dowhile 区别为前者先判断条件表达式,后执行循环体语句;后者先执行循环体,然后在检查条件是
4、否成立,若成立,再执行循环体。在 while 中不要忽略给 i 和 sum 赋初值,否则它们的值是不可预测的。While、dowhile、for,都可以用 break 语句跳出循环,用continue 语句结束本次循环。实验实验 3 3题目题目利用数组处理批量数据 实验实验 学时学时4 4 学时学时实验实验 目的目的1. 掌握一维数组和二维数组的定义、赋值和输入输出的方法;2. 掌握字符数组和字符串函数的使用;3. 掌握与数组有关的算法。实验实验 内容内容 与与 题目题目 要求要求1. 输入一个 3*3 的整型矩阵,统计其中正数、负数以及零的个数并输出。源程序代码如下:#includeint
5、main()int a33;int i,j;int sum_0=0,sum_1=0,sum_2=0;printf(“请输入 3*3 矩阵:“);for(i=0;i0)sum_1+;else sum_0+;printf(“0 有:%d 个n“,sum_0);printf(“正数有:%d 个n 负数有:%d 个n“,sum_1,sum_2);运行结果贴图:2. 从键盘输入 10 个数,找出 10 个整数中的最大数并与第一个数交换位置,找出最小数与最后一个数交换位置,输出变换后的结果 。源程序代码如下:#includeint main()int a10;int max=0,min=0;int i,t
6、emp;printf(“请输入 10 个整数:“);for(i=0;iamin)min=i;temp=amin;amin=a0;a0=temp;实验实验 内容内容 与与 题目题目 要求要求for(i=0;i#include int main()char s50; char t50; int i; printf(“请输入字符串:“); scanf(“%s“,s);memset(t,0,sizeof(t); for( i=0;iint main()int flag(int x0,int x1);int a,b,n;printf(“请输入区间范围:“);scanf(“%d%d“,n=flag(a,b
7、);printf(“能被 3 整除的数的个数是:%dn“,n);return 0;int flag(int x0,int x1)int d40,m,i=0;m=x0;for(;mvoid main()void move(int a10,int n,int m);int n,m;int i;int a10;printf(“请输入你要的数组长度n“);scanf(“%d“,printf(“输入你要交换的数组:n“);for(i=0;i0)p=a+n-1;array_end=*(a+n-1);for(p;pa;p-)*p=*(p-1);*a=array_end;m-;if(m0)move(a,n,m
8、); 运行结果贴图:3. 函数 void jssort(int a,int n)的功能是对 a 数组中前 n 个元素的后三位的大小进行升序排序。要求:在 main 中输入 a 数组的 10 个元素;调用函数 jssort实现对 a 数组的排序;输出排序后的各元素。测试数据:6012,5099,9012,7025,8088,9096,8080,3046,5082,2345运行结果:6012,9012,7025,3046,8080,5082,8088,9096,5099,2345源程序代码如下:#includeint main()void jssort(int b);void writedat(i
9、nt b);int a10,i;printf(“请输入需要排序的数组:n“);for(i=0;ibj%1000)min=j;if(min!=i)t=bmin;bmin=bi;bi=t;void writedat(int b)int i;printf(“排序后的数组:n“);for(i=0;i10;i+)printf(“%5d“,bi);printf(“n“);运行结果贴图:心得心得 体会体会了解了如何定义函数,如何调用函数,明白全局变量的应用范围。区别内部函数与外部函数。学会运用函数。实验实验 5 5题目题目用指针处理链表 实验实验 学时学时4 4 学时学时实验实验 目的目的1. 掌握指针的概
10、念,会定义和使用指针变量;2. 掌握结构体类型变量定义和使用;3. 掌握链表的概念和操作方法。实验实验 内容内容 与与 题目题目 要求要求1. 综合教材第 9 章例 9.9(建立链表的函数 creat) 、例 9.10(输出链表的函数 print)和第 9 章习题第 7 题(删除链表中结点的函数 del) 、第 8 题(插入结点的 函数 insert) ,再编写一个主函数,先后调用这些函数。用 5 个函数组成一个程序, 实现链表的建立、输出、删除和插入,在主函数中指定需要删除和插入的结点 的数据。 运行结果贴图:实验实验 内容内容 与与 题目题目 要求要求实验实验 内容内容 与与 题目题目 要求要求心得心得 体会体会链表是常见的数据结构,它是动态的进行存储分配的结构,链表中各元素在内存中的地址可以是不连续的。链表这种结构必须利用指针变量才能实现。