函数AAA(s,t) char*s,*t; {while(*t++); t--; while(*t++=*s++); }

题目
单选题
函数AAA(s,t) char*s,*t; {while(*t++); t--; while(*t++=*s++); } 的功能是:()。
A

求串的长度

B

比较两个串的大小

C

将串s复制到串t中

D

将串s连接到串t中

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

38) 有以下程序:

#include <stdio.h>

void fun(char *t,char *s)

{ while(*t!=0) t++;

while((*t++=*s++)!=0);

}

main()

{ char ss[10]= " acc " ,aa[10]= " bbxxyy " ;

fun(ss,aa);

printf( " %s,%s\n " ,ss,aa);

}

程序运行结果是

A)accxyy,bbxxyy

B)acc, bbxxyy

C)accxxyy,bbxxyy

D) accbbxxyy,bbxxyy


正确答案:D

第2题:

下列程序中的函数strcpy2()实现字符串两次复制,即将t所指字符串复制两次到s所指内存空间中,合并形成一个新字符串。例如,若t所指字符串为:efgh,调用strcpy2后,s所指字符串为:efghefgh。请填空。#include <stdio.h>#include <string.h>void strcpy2(char *s,char *t){char *p=; while(*s++=*t++); s=s-1; while(=*p++);}main(){char str1[100]="abcd",str2[]="efgh"; strcpy2(str1,str2); printf("%s\n",strl);}


正确答案:t *s++
两种赋值的方法是一样的,将指向的字符的地址赋给s,然后各自增1,s=s-1的目的是在赋值的时候多加了1.

第3题:

有以下函数

int fun(char *s)

{ char *t=s;

while(*t++);

return(t-s);

}

该函数的功能是

A) 比较两个字符 串 的大小

B) 计算 s 所指字符串占用内存字节的个数

C) 计算 s 所指字符串的长度

D) 将 s 所指字符串复制到字符串 t 中


正确答案:B

第4题:

有以下函数 int fun(char *s) { char *t=s; while(*t++); return(t-s); } 该函数的功能是

A.比较两个字符串的大小

B.计算s所指字符串占用内存字节的个数

C.计算s所指字符串的长度

D.将s所指字符串复制到字符串t中


正确答案:B
解析:循环语句while(*t++);执行完时,指针变量t就指向了字符中结束符‘\o’之后的位置,所以语句return(t-s);返回的就是字符串s所用内存的字节个数。

第5题:

有以下函数

int aaa(char *s)

{ char *t=s;

while(*t++);

t--;

return(t-s);

}

以下关于aaa函数的功能的叙述正确的是

A.求字符串s的长度

B.比较两个串的大小

C.将串s复制到串t

D.求字符串s所占字节数


正确答案:A
解析:循环开始前,指针t和s都指向字符串的起始位置,然后通过while循环判断t指向的位置是否为空,同时让t向右移动一位。while循环结束时,t自减1,此时t指向的位置是字符串的结束标志'\0'处,故t-s的值是字符串的长度,并不包括结束标志。

第6题:

以下与库函数strcmp(char *s, chat *t)的功能相等的程序段是()。

A.strcmp1(char *s, chat *t)

{ for ( ;*s++==*t++ ;)

if (*s=='\0') return 0

return (*s-*t)

}

B.strcmp2(char *s, char *t)

{ for( ;*s++==*t++ ;)

if (!*s) return0

return (*s-*t)

C.strcmp3(char *s, char *t)

{ for ( ;*t==*s ;)

{ if (!*t) return 0

t++

s++}

return (*s-*t)

}

D.strcmp4(char *s, char *t)

{ for( ;*s==*t;s++,t++)

if (!*s) return 0

return (*t-*s)

}


答案:C

第7题:

函数sstrcmp()的功能是对两个字符串进行比较。当s所指字符串和t所指字符串相等时,返回值为0;当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于0(功能等同于库函数strcmp()),请填空。#include<stdio.h>int sstrcmp(char *s,char *t){ while(*s&&*t&&*s= =){s++;t++; }return;}


正确答案:*t或t[0] *s-*t或*s-t[0]或s[0]-*t或s[0]-t[0]
当s所指字符和t所指字符不等时,退出循环;否则继续执行循环。当发现不等时,返回*s-*t,即如果s所指字符大于t所指字符,则返回值大于0,小于则返回值小于0.

第8题:

有以下函数

int aaa(char *s)

{ char *t=s;

while(*t++);

t--;

return(t-s);

}

以下关于 aaa 函数的功能叙述正确的是

A) 求字符串s 的长度

B) 比较两个串的大小

C) 将串s 复制到串t

D) 求字符串s 所占字节数


正确答案:A

第9题:

有以下程序includevoidfun(char*t,char*s){while(*t!=0)t++;while((*t++=*s++)!=0);}m

有以下程序 #include <stdio.h> voidfun(char*t,char*s) {while(*t!=0) t++; while((*t++=*s++)!=0); } main() {char ss[10]="acc",aa[10]="bbxxyy"; fun(ss,aa); printf("%s,%s\n",ss,aa); } 程序的运行结果是

A.accxyy,bbxxyy

B.acc,bbxxyy

C.accxxyy,bbxxyy

D.accbbxxyy,bbxxyy


正确答案:D
解析: 本题中fun函数实现丁字符串函数str-eat的功能,将字符串aa连接到字符串ss的末尾。调用fun函数时,形参t和s分别指向了字符串ss和aa,然后通过一个while循环使t指向字符串ss的结束符的位置,第二个while循环将字符串aa中的字符(包括结束符'\0')逐个复制到字符串ss的末尾处。

第10题:

下面函数的功能是()sss(s,t)char*s,*t;{ while((*s)&&(*t)&&(*t++==*s++));return(*s- * t); }

A.求字符串的长度

B.比较两个字符串的大小

C.将字符串s复制到字符串t中

D.将字符串s接续到字符串t中


正确答案:B

更多相关问题