77范文网 - 专业文章范例文档资料分享平台

作业本_《C程序设计Ⅱ》答案(6)

来源:网络收集 时间:2018-12-17 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

14.以下程序经编译和连接后生成可执行文件PROG.EXE,如果在此可执行文件所在目录的DOS提示符下键入:PROG AB CDEFGH IJKL<回车>,则输出结果为 IJKLCDEFGHAB 。

# include “stdio.h”

void main( int argc,char *argv[]) { while(--argc>0)

printf(\,argv[argc]);

}

15. mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回。int mystrlen(char *str) { int i;

for(i=0; *(str+i) != '\\0';i++)

return ( i ); }

16. 以下程序判断整型数组是否“对称”(即顺读和倒读都一样,如: 1 2 3 3 2 1 # include \ # define N 10

void main()

{ int a[N],*p1=a,*p2;

for(p2=a;p2

scanf(“%d”,p2);

p2= a+N-1 ; while( p1

p1++; p2-- ;

}

if(p1

prinf(\ else

prinf(\

}

25

)。

17. 下面程序的功能是在字符串str中找出最大字符并放在第一个位置上,并将该字符前的原字符

往后顺序移动,如chyab变成ychan。

# include \void main()

{ char str[128],*p=str,*q,max; gets(p); max=*p;

while( *p!= '\\0' ) { if(max<=*p) { max=*p;

q=p

} p++; } p=q;

while( p>str ) { *p=*(p-1);

p-- }

*p=max; puts(p); }

18. 下面程序的功能是将两个字符串s1和s2连接起来。

#include \

char* conj(char *p1,char *p2) { char *p=p1;

while(*p1) p1++ ;

while(*p2){ *p1= *p2 ; p1++; p2++;} *p1='\\0';

return p ; }

void main()

{ char s1[80],s2[80]; gets(s1);

gets(s2); conj(s1,s2); puts(s1); }

26

19. 以下函数Remove_blank删除字符串中所有空格。

# include \Remove_blank(char *s) { int i, tmp;

char tmpstr[128];

for (i = 0, tmp = 0; s[i] != '\\0' ; i++) if(s[i] != ' ')

tmpstr[ tmp++ ]=string[i]; tmpstr[tmp]= '\\0' ; strcpy(s,tmpstr);

}

20.以下递归函数将n个整数的前面各数顺序向后移m个位置,最后m个数变成最前面的m个数。

void move(int array[],int n,int m) { int *p,array_end;

array_end= *(array+n-1) ; for(p=array+n-1;p>array;p--) *p=*(p-1);

*array= array_end ; m--; if(m>0)

move(array,n,m) ;

}

三、编程题(共30分,每题5分)

1.从键盘输入两个字符串a和b,要求不用strcat把b中的前五个字符连接到a中,如果b的长度

小于5,则把b的所有元素都连接到a中。试编程。

2.请编写函数fun,该函数的功能是将M行N列的二维数组中的数据,按列的顺序依次放到一维数

组中。在主函数中输入/输出数组。

3.请编一个的函数fun(char *s),该函数(非递归)的功能是把字符串中的内容逆置。要求不得

使用C语言的字符串函数,在主函数中进行字符串的输入与输出。

例如:输入字符串为abcdefg,则调用该函数后,字符串中的内容为gfedcba。

4.设有一数列,包含10个数,已按升序排好。现要求编程实现从指定位置开始的n个数按逆序重

新排列并输出新的完整数列。进行逆序处理要求用指针方法。(例如:原数列为 2,4,6,8,10,12,14,16,18,20,

若要求把从第4个数开始的5个数按逆序重新排列,则得到的新数列为 2,4,6,16,14,12,10,8,18,20)

27

5.假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串尾部的*号全部

删除,前面和中间的*号不删除。在主函数中输入、输出字符串。

例如,若字符串中的内容为****A*BC*DEF*G*******,删除后,字符串中的内容则应当是****A*BC*DEF*G。(不得使用C语言提供的字符串函数)

6.M个学生的成绩存放在score数组中,请编写函数,其功能是:将低于平均分的人数作为函数值

返回,将低于平均分的分数放在below所指的数组中。在主函数中输出人数和below数组。

2. 1.

#include

void strcat5(char *p1,char *p2) { int i=0;

while(*p1!='\\0')p1++; /*移到字符串最后*/ while(*p2!='\\0'&&i<5) /*拷贝字符到后面*/

{*p1=*p2;p1++;p2++;i++;}

*p1='\\0'; }

void main() {

char s1[80],s2[80]; gets(s1); gets(s2); strcat5(s1,s2); puts(s1); }

#include #define M 4 #define N 5

void Fun(int a[][N],int b[]); void main()

{ int a[M][N] = {1,2,3,4,5,

6,7,8,9,10, 11,12,13,14,15, 16,17,18,19,20};

int b[M*N]; int i,j; Fun(a,b);

printf(\); for(i=0;i

printf(\); for(i=0;i

void Fun(int a[][N],int b[]) {

int i=0,j=0; int *p=b;

for (j = 0; j < N; j++)

for (i = 0; i < M; i++) *p++=a[i][j]; }

for(j=0;j

printf(\,a[i][j]); printf(\);

28

3.

#include \ void fun(char *s) { char t,*s1,*s2; s1=s2=s; while(*s2!='\\0')s2++;

/*移到字符串最后*/

s2--; while(s1

}

}

void main() { char p[80]; gets(p); fun(p); puts(p); }

4.

#include \

void fun(int *p,int n,int start,int count) { int t,*p1,*p2; p1=p+start-1; p2=p+start+count-2;

while(p1

p1++;p2--;

}

}

void main() { int a[10]; int i,start,count;

printf(\请输入10个数:\\n\); for(i=0;i<10;i++)

scanf(\,&a[i]);

printf(\请输入起始位置:\\n\); scanf(\,&start); printf(\请输入个数:\\n\); scanf(\,&count);

if(start<1||start>10||count<1||count>10

||start+count-1>10) { printf(\起始位置或个数的范围错误!\\n\); return ;

}

fun(a,10,start,count); printf(\处理后的结果:\\n\); for(i=0;i<10;i++)

printf(\,a[i]);

}

29

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库作业本_《C程序设计Ⅱ》答案(6)在线全文阅读。

作业本_《C程序设计Ⅱ》答案(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/373537.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: