C语言写程序算oj罚时,C语言基础编程实习报告

《C语言基础编程实习报告》由会员分享,可在线阅读,更多相关《C语言基础编程实习报告(17页珍藏版)》请在人人文库网上搜索。

1、20112012学年第 2学期)实习名称:认识实习 分项名称: C语言基础编程系别: 计算机与通信工程系专 业: 测控(1)班 学 号: 姓 名: 实习地点: 学校机房3楼 实习时间: 8月23日8 月26日 实习成绩: 指导教师: 严光银 翟勇涛 西南交通大学峨眉校区2012年 8 月 26 日一实习目的和要求实习目的:1、巩固C语言编程基础知识2、熟练C语言调试中的常见错误及处理办法3、加强C语言综合编程能力训练4、熟练掌握C语言程序上机调试过程5、学会编写C语言程序解决简单计算题、字符串处理问题、日期和时间处理问题、高精度数处理等问题 6、提高外文资料阅读理解的能力。要求:1.电子文档建。

2、立一个文件夹,名称为:学号姓名 C基础如:学号为,姓名为李四,则,文件夹名称: 李四 C基础C基础编程(10个C程序)文件名格式:学号姓名简拼_题目编号A.c 如:题号为1001,则文件名为:LS_1001A.cC强化编程(共10道,至少选做4道题)文件名格式:学号姓名简拼_题目编号B.c 实习报告电子文档:学号姓名 C基础.doc改正错误分析示例中的错误2.实习报告(打印稿)二实习方式和安排方式:上课与上机安排:8月23日8:00-12:00第3组C基础编程上课6307严光银8月24日11:50-14:50第3组C基础编程上机校机房3楼严光银翟勇涛8月24日18:10-21:10第3组C基础。

3、编程上课校机房3楼严光银翟勇涛8月25日15:00-18:00第3组C基础编程上机校机房3楼严光银翟勇涛8月26日15:00-18:00第3组C基础编程上机校机房3楼严光银翟勇涛三. 实习内容(一)C基础编程(选做6题)l 在杭电OJ成功提交的题目数:6l 在杭电OJ未成功提交的题目编号:无l 提交的电子文档中包含的C程序数:6从6道基础编程题中任选2道比较满意的题目,写出详细解题报告如下:*第1题 start*(1) 题目解析题目编号 1108问题描述编写程序计算2个整数a、b的最小公倍数。输入数据输入数据输入2个整数a和b,中间用空格间隔。输出要求对于每次读入的一对整数,输出最小公倍数的结。

4、果。每个结果以回车结束。输入样例56 256输出样例1792(2) 源程序#includeint big(int x,int y);int main()int a,b,max,n;while(scanf(%d%d,&a,&b)!=EOF)max=big(a,b);n=a/max*b;printf(%dn,n);return 0;int big(int x,int y)int p,t,s;if(x=y)s=x;if(xy)x=t;else x=y;y=t;t=x-y;s=y;return(s);(3) 本地计算机运行结果截图(4) OJ提交结果截图*第1题 end*第2题 start*(1) 题。

5、目解析题目编号 1040问题描述这些天,我思考一个问题,我怎样才能得到一个问题一样容易a + B吗?这是相当困难做这样一件事。当然,我得到了它在许多清醒的夜晚。给你一些整数,你的任务是将这些数字提升(升序)。你应该知道如何容易的问题是现在!祝你好运!输入数据输入包含多个测试用例。第一行的输入是一个整数T这是测试用例的数量。T测试用例遵循。每个测试用例包含一个整数N(1 void main()int n,m,a1000;int i,j,c1,c2,k;while (scanf(%d,&n)!=EOF)for (c1=1;c1aj+1)aj=aj+aj+1;aj+1=aj-aj+1;aj=aj-a。

6、j+1;k=1; for (i=0; iint main()int i,a,j;double sum;while(scanf(%d,&a)!=EOF)sum=0;for(j=1;jint main()int a10000;int i,j,c,m,n;while(scanf(%d,&n)!=EOF)a0=1;m=0; for(i=1;i0) m+;am=c; printf(%d,am); for(i=m-1;i=0;i-) printf(%4.4d,ai);printf(n);return 0; (3) 本地计算机运行结果截图(4) OJ提交结果截图*第4题 end*第5题 start*(1) 。

7、题目解析题目编号 1017源程序#includevoid main()int n,m,k,z,i,j,x,ans;scanf(%d,&k);for (i=1;i1) printf(n);x=1;while (scanf(%d%d,&n,&m)if (n=0&m=0) break;printf(Case %d: ,x);x+;ans=0;for (j=1;jint main() int a,b;while(scanf(%d %d,&a, &b) &(!(a=0 & b=0)printf(%dn,a+b); (3) 本地计算机运行结果截图(4) OJ提交结果截图*第6题 end*(二)C强化编程(。

8、选做4题)a) 在杭电OJ成功提交的题目数:4b) 在杭电OJ成功提交的题目编号:c) 提交的电子文档中包含的C程序数:4写出详细解题报告如下:*第7题 start *(1) 题目解析题目编号 2001问题描述输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离。输入数据输入数据有多组,每组占一行,由4个实数组成,分别表示x1,y1,x2,y2,数据之间用空格隔开。输出要求对于每组输入数据,输出一行,结果保留两位小数。输入样例0 0 0 10 1 1 0输出样例1.001.41(2) 源程序# include# includeint main()double x1,y1,x2,y。

9、2,d;while(scanf(%lf%lf%lf%lf,&x1,&y1,&x2,&y2)!=EOF)d=sqrt(x1-x2)*(x1-x2)+(y1-y2)*(y1-y2);printf(%.2lfn,d);return 0;(3) 本地计算机运行结果截图(4) OJ提交结果截图*第7题 end*第8题 start*(1) 题目解析题目编号 1005问题描述f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)输入数据输入数据输入3个数a ,b和n,中间用空格间隔。输出要求对于每次读入的一对整数,输出结果。每个结果以回车结束。输入样例。

10、1 1 31 2 100 0 0输出样例25(2) 源程序#includeint b22;int A,B;void f(int n);int main()int n;while(scanf(%d%d%d,&A,&B,&n)&(A|B|n)if(n=1|n=2)printf(1n);continue;A%=7;B%=7;b00=A;b01=B;b10=1;b11=0;f(n-2);printf(%dn,(b00+b01)%7);return 0;void f(int n)int b00,b01,b10,b11,c00,c01,c11,c10;if(n=0)b00=1;b10=b01=0;b11=。

11、1;return;if(n=1)b00=A;b01=B;b10=1;b11=0;return;if(n%2=0)n/=2;f(n);b00=b00*b00+b01*b10;b01=b00*b01+b01*b11;b10=b10*b00+b11*b10;b11=b10*b01+b11*b11;b00=b00%7;b01=b01%7;b10=b10%7;b11=b11%7;elsen/=2;f(n);b00=b00*b00+b01*b10;b01=b00*b01+b01*b11;b10=b10*b00+b11*b10;b11=b10*b01+b11*b11;c00=b00*A+b01;c01=b0。

12、0*B;c10=b10*A+b11;c11=b10*B;b00=c00%7;b01=c01%7;b10=c10%7;b11=c11%7;(3) 本地计算机运行结果截图(4) OJ提交结果截图*第8题 end*第9题 start *(1) 题目解析题目编号 2010问题描述春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的:“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=13+53+33。现在要求输出所有在m和n范围内的水仙花数。输入数据输入数据有多组,每组占一行,包括两个整数m和n(100int main()int m,n,a,b,c,t。

13、;while ( scanf( %d %d,&m,&n )!=EOF ) for ( t=0;m0) printf( );printf( %d,m );t=t+1;if ( t=0 )printf( non );elseprintf( n );return 0;(3) 本地计算机运行结果截图(4) OJ提交结果截图*第9题 end*第10题 start *(1) 题目解析题目编号2017问题描述对于给定的一个字符串,统计其中数字字符出现的次数。输入数据输入数据有多行,第一行是一个整数n,表示测试实例的个数,后面跟着n行,每行包括一个由字母和数字组成的字符串。输出要求对于每个测试实例,输出该串中。

14、数值的个数,每个输出占一行。输入样例2asdfasdfasdfasdfasdfasdfasdfasdf输出样例69(2) 源程序#include int main()char ch;int n;int count;scanf(%d%*c, &n);while (n-)count = 0;while(ch = getchar() != n)if (ch = 0 & ch = 9)count+;printf(%dn, count);return 0;(3) 本地计算机运行结果截图(4) OJ提交结果截图*第10题 end*3.实习完成情况通过四天的实习,我们总共在杭州电子科技大学的网站上提交了十多。

15、道c程序设计题,并且完成得不错。我把其中十道题以报告的形式呈现,完成了实习日志与实习报告。4.实习心得与体会该通过这个课程设计,我们更加牢固的掌握了C+的知识。并对于以前不熟悉的知识有了更加深刻的了解。同时,在完成此次课程设计的过程中,老师同学给了我们很多宝贵的建议和指点,我们很感谢他们。虽然有些疲劳和困倦,但带给我很多的收获。C+已经学了一个学期了,有许多知识都存在似懂非懂的现象,这种现象通过实际的上机操作,已经减少了许多。对这些知识也有了更深的理解和很好的掌握。也有很多理论上说得过去的代码,但到了实际操作,却是行不通的。这种困惑,有许多已经通过实际操作解决了,并能够深刻认识,但也有很多没有。

16、明白。只能避过这些方法,换方法实现。在课程设计之前,因为有了综合实验的经验与教训,明白了写代码这一步是非常重要的,因为当你把代码输入电脑,并用编译器将其运行,发现通过不了,再来检查找出问题,这是一件非常辛苦的事情,也很浪费时间。我们觉得写程序,应该先找到该程序中的核心地方,用多种方法来实现该核心,这才可能避免等到发现逻辑上或者编译器不支持上的错误,才来想补救的措施,这样花费时间在想补救措施是很不值得的。此次任务的完成,也体现出同学之间的团结精神。实践是检验真理的唯一标准。没有实践,就不会发现和深刻体会它的真实所在。只有通过检验的真理,在自己的心里,才会认可它的真实性。面向对象程序设计的完成,使我们懂得了真理的重要性,理论和实际的相结合,才能真正把握所学和所掌握的知识。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值