c语言实验设计实验报告

上传人:桔**** 文档编号:509147250 上传时间:2023-09-08 格式:DOC 页数:11 大小:135.50KB
返回 下载 相关 举报
c语言实验设计实验报告_第1页
第1页 / 共11页
c语言实验设计实验报告_第2页
第2页 / 共11页
c语言实验设计实验报告_第3页
第3页 / 共11页
c语言实验设计实验报告_第4页
第4页 / 共11页
c语言实验设计实验报告_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《c语言实验设计实验报告》由会员分享,可在线阅读,更多相关《c语言实验设计实验报告(11页珍藏版)》请在金锄头文库上搜索。

1、c语言实验设计 实验报告 一、实验目的(1)掌握一维数组的基本操作;(2)掌握二维数组的基本操作;二、实验环境(描述实验的软件、硬件环境) 安装有Microsoft VC+6.0的PC机三、实验内容、步骤和结果分析(列出实验内容,阐明实验步骤及中间的结果或现象、最终结果和现象,对这些结果和现象进行分析,若出现误差也予以分析误差原因)题目一:从键盘上输入六个整数,存放到整型数组arr中,再从键盘上输入一个整数,存放到整型变量n中。要求: 编程查找整数n是否在数组arr中出现过。若出现,则输出第一次出现的位置,否则,输出no found(1)源码#include #define N 6int ma

2、in()int arrN;int i,n;printf(输入六个整数:);for(i=0;iN;i+)scanf(%d,&arri);printf(输入一个整数:);scanf(%d,&n);for(i=0;i=N)printf(no foundn);return 0;(2)运行结果截图题目二:编程实现将原数组中的元素逆序存储:例如原数组a=5,2,7,4 ,则逆序后的数组a=4,7,2,5.要求:(1)分别输出逆序前、后数组各元素的数值;(2)逆序实现不要借助其他数组;(1)源码#include int main()int a4=5,2,7,4;int i;printf(原数组:);for(

3、i=0;i=0;i-)printf(%2d,ai);printf(n);return 0;(2)运行结果截图题目三:输出数组中的元素(重复的元素只输出一次): 例如数组int a=1,1,2,3,26,3,4,5,8,7,7,4;则应输出 1 2 3 26 4 5 8 7(1)源码#include int main()int a=1,1,2,3,26,3,4,5,8,7,7,4;int b,i,n;printf(%3d,a0);for(i=1;i12;i+)for(n=0;ni;n+)if(ai=an)b=0;break;else b=1;if(b=1)printf(%3d,ai); prin

4、tf(n);return 0;(2)运行结果截图 题目四:编写一个程序,将用户输入的十进制正整数转换成任意进制(216)的数(将结果存储在一维数组中,最后显示结果) (1)源码#includeint main()int a,b,d;int i,m,n;int c100;for(d=1;d!=-1;)printf(请输入一个十进制整数:);scanf(%d,&a);if(a=-1)goto done;printf(请输入要转换成的进制:);scanf(%d,&b);for(i=0,m=1;m!=0;i+)ci=a%b;m=a/b;a=m; printf(转换结果为:);for(n=i-1;n=0

5、;n-)printf(%d,cn);printf(n);printf(-n); done:printf(-n); return 0;(2)运行结果截图题目五: 假设共有3名学生,每名学生都有5门成绩(语文、数学、英语、化学、物理)。 要求:(1)从键盘上输入每位学生的5门课程成绩;(2)输出每位同学的总成绩和平均分;(1)源码#includeint main ()int a3=1,2,3;float b5;int i,j;float sum;for (i=0;i3;i+)printf(请输入第%d位学生的课程成绩(语文、数学、英语、化学、物理):,ai);for(j=0,sum=0;j5;j+

6、)scanf(%f,&bj);sum =sum+bj;printf(总分:%.2f平均分:%.2fn,sum,sum/5.0);printf(n);return 0;(2)运行结果截图题目六:使用二维数组打印如下图形(杨辉三角)(1)方法1:#includeint main ()int a66=1;int i,j;for(i=1;i6;i+)ai0=1;printf(-n);for(i=0;i6;i+)for(j=0;j=i;j+)if(j=0) printf(%4d,aij);elseaij=ai-1j-1+ai-1j;printf(%4d,aij);printf(n);printf(-n)

7、;return 0;方法2:#includeint main ()int a66=1;int i,j;for(i=1;i6;i+)ai0=1;printf(-n);for(i=0;i6;i+)for(j=0;j=i;j+)if(j=0) aij=aij;elseaij=ai-1j-1+ai-1j;for(i=0;i6;i+)for(j=0;j=i;j+)printf(%4d,aij);printf(n);printf(-n);return 0;(2)运行结果截图题目七:编写一个程序,将两个字符串连接起来。注意:不要用strcat函数。(1)源码#includeint main ()char a

8、3;char b5;char c50;int i;printf(input the value of array a:);scanf(%s,a);printf(input the value of array b:);scanf(%s,b);for(i=0;i8;i+)if (i3)ci=ai;elseci=bi-3;for(i=0;i8;i+)printf(%c,ci);printf(n);return 0;(2)运行结果截图题目八:编写程序,读入一个以符号!结束的长度小于20字节的英文句子,检查其是否为回文(即正读和反读都是一样的)。例如: 读入句子:MADA ADAM! 它是回文,所以输

9、出:YES读入句子:ABCDBA)! 它不是回文,所以输出:NO (1)源码#includeint main ()char a20;int i,k,h;printf(读入一个以符号!结束的长度小于20字节的英文句子:);for(i=0;i20;i+)scanf(%c,&ai);if(ai = !)break;for(k=0;ki;k+)h=i-k-1;if(ak!=ah)printf(Non);break;if(k=i)printf(Yesn);return 0;(2)运行结果截图四、讨论(说明实验过程中遇到的问题及解决办法;未解决/需进一步研讨的问题或建议新实验方法等)题目四中开头会出现这种问题。后来问了老师,就知道是怎么回事啦!明白问题出在哪里真是高兴。题目八开头也是运行不出来,但是在11月9日下午的课上,听老师讲课时恍然大悟 原来自己忘记在输入的那个地方加入地址符,所以总是运行不了。题目六中,把输出语句放入判断的循环内和循环外,好像应该是没有什么区别吧,方法一比较省代码吧。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 演讲稿/致辞

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号