c语言指针习题(2)

2019-05-18 21:54

sub(char *a,int t1,int t2) { char ch;

while (t1

ch = *(a+t1); *(a+t1)=*(a+t2) ; *(a+t2)=ch ; t1++ ; t2-- ; } }

main ( )

{ char s[12]; int i;

for (i=0; i<12 ; i++) s[i]=?A?+i+32 ; sub(s,7,11);

for (i=0; i<12 ; i++) printf (“%c”,s[i]); printf(“\\n”); }

4.当运行以下程序时,写出输入 6↙ 的程序运行结果。

sub(char *a,char b)

{ while (*(a++)!=?\\0?) ; while (*(a-1)

main ( )

{ char s[]=”97531”,c; = getchar ( ) ; sub(s,c); puts(s) ; }

5.写出下面程序的运行结果。

Java dBase

C Language Pascal

main ( )

{ char *a[]={“Pascal”,”C Language”,”dBase”,”Java”}; char (**p)[ ] ; int j ; p =+ 3 ;

for (j=3; j>=0; j--)

printf(“%s\\n”,*(p--)) ; }

四.程序填空题

1.下面函数的功能是从输入的十个字符串中找出最长的那个串,请填(2)空使程序完整。

6

void fun(char str[10][81],char **sp) { int i;

*sp = 【1 】; for (i=1; i<10; i++)

if (strlen (*sp)

2.下面函数的功能是将一个整数字符串转换为一个整数,例如:”-1234”转换为1234,请填(3)空使程序完整。

int chnum(char *p) { int num=0,k,len,j ; len = strlen(p) ;

for ( ; 【1 】; p++) { k=【2 】; j=(--len) ; while (【3 】) k=k*10 ; num = num + k ; }

return (num); }

3.下面函数的功能使统计子串substr在母串str中出现的次数,请填(3)空使程序完整。

int count(char *str, char *substr) { int i,j,k,num=0;

for ( i=0; 【1 】; i++)

for (【2 】, k=0; substr[k]= =str[j]; k++; j++) if (substr [【3 】]= =?\\0?) { num++ ; break ; }

return (num) ; }

6.下面函数的功能是将两个字符串s1和s2连接起来,请填(2)空使程序完整。

void conj(char *s1,char *s2) {

while (*s1) 【1 】;

while (*s2) { *s1=【2 】; s1++,s2++; } *s1=?\\0? ; }

五.编程题

1.定义3个整数及整数指针,仅用指针方法按由小到大的顺序输出。

2.输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写三个函数:①输入10个数;②进行处理;③输出10个数。所有函数的参数均用指针。

7

3.编写一个求字符串的函数(参数用指针),在主函数中输入字符串,并输出其长度。

4.编写一个函数(参数用指针)将一个3×3矩阵转置。

5.写函数原型为int strcmp(char *s1,char *s2);的函数,该函数实现两个字符串的比较(函数功能描述参见教材P137,strcmp字符串处理函数)。

6.利用指向行的指针变量求5×3数组各行元素之和。

8


c语言指针习题(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:药理学实验

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: