[工学]计算机上机实习报告.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]计算机上机实习报告

改错题 第1题 题目要求 函数fun的功能是:用递归算法计算斐波拉契级数数列中第n项的值。从第l项起,斐波拉契级数序列为1、1、2、3、5、8、13、21、…;例如:当给n输入7,该项的斐波拉契级数值为13。 #include stdio.h long fun(int g) /*************found************/ { switch(g); { case 0:return 0; /***********found*************/ case 1;case 2: return 1; } return (fun(g-1)+fun(g-2)); } main() { long fib; int n; printf(input n: ); scanf(%d,n); printf(n=%d\n,n); fib=fun(n); printf(fib=%d\n\n,fib); } 错误分析 (语句swich(g);错误,swich(表达式)后不应该带有“;”,应该为:swich(g) (语句case 1;case 2: return 1;错误,case语句常量后应该是“:”,应该为:case:case:return 1; 第2题 一、题目要求 下列给定程序中,函数fun的功能是:将字符串p中的所有字符复制到字符串b中,要求每复制三个字符之后插入一个空格。例如,在调用fun函数之前给字符串a输入ABCDEFGHIJK,调用函数之后,字符串b中的内容则为ABC DEF GHI JK。 #include stdio.h void fun(char *p,char *b) { int i,k=0; while(*p) /**********found********/ { i=1; /***********found*********/ while(i3 || *p) { b[k]=*p; k++;p++;i++; } if(*p) /************found**********/ { b[k]= ; } } b[k]=\0; } main() { char a[80],b[80]; printf(enter a string ); gets(a); printf(the original string: ); puts(a); fun(a,b); printf(\nthe string after insert space: ); puts(b); printf(\n\n); } 二、错误分析 ①题目中p是指针型变量作函数参数,因此给b[k]赋值时出现错误。应改为b[k]=*p; ②题目要求赋值3个字符后加一个空格,所以应该是先给b[k]赋值空格,然后变量k再加1。应改为b[k]= ;k++ 第3题 一、题目要求 下列给定程序中,函数fun的功能是:用冒泡法对6个字符串按由小到大的顺序进行排序。 #include stdio.h #include conio.h #define MAXLINE 20 fun ( char *pstr[6]) { int i, j ; char *p ; for (i = 0 ; i 5 ; i++ ) { for (j = i + 1; j 6; j++) { /**************found**************/ if(strcmp(*(pstr + i), (pstr + j)) 0) { p = *(pstr + i) ; /**************found**************/ *(pstr + i) = pstr + j ; *(pstr + j) = p ; } } } } main( ) { int i ; char *pstr[6], str[6][MAXLINE] ; clrscr( ) ; for(i = 0; i 6 ; i++) pstr[i] = str[i] ; printf( \nEnter 6 string(1 string at each line): \n ) ; for(i = 0 ; i 6 ; i++) scanf(%s, pstr[i]) ; fun(pstr) ; printf(The strings after sorting:\n) ; for(i = 0 ; i 6 ; i++)

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档