问答题 改错题 【程序功能】 函数fun的功能是将str所指向的一行包含若干单词的文本(单词之间用空格隔开)依次拆分成长度不超过20个字符的若干文本行,单词不跨行,且使拆分出的行数最少,再将拆分出的每行字符以字符串的形式存储到page指向的二维数组的一行中,函数返回拆分出的行数 【测试数据与运行结果】 测试数据:A great discovery solves a greate problem. 屏幕输出: A great disconvery solves a great problem 【含有错误的源程序】 以下源程序已保存在T盘myf1.c文件内,考生可直接打开该文件调试程序 #include #include #include int fun(char str[],char pag[][]) {int i,k=0,j,flag=1; while(*str && flag) {if(strlen(str)<20) {pag[k]=str; flag=0; } else {i=20; while(str[i]!=' ') i--; for(j=0;j
【正确答案】(1) char pag[][] 改为 char pag[][21] (2) pag[k]=str; 改为 strcpy(pag[k],str) (3) pag[k][j]=str[i] 修改为 pag[k][j]=str[j] (4) char str[80]={A great discovery solves a great problem.}; 修改为char str[80]={“A great discovery solves a great problem.”};
【答案解析】