网友您好, 请在下方输入框内输入要搜索的题目:

题目内容 (请给出正确答案)

串的操作函数str定义为: int str(char*s){ char*p=s; while(*p!=’\0')p++; return p=s; } 则str("abcde")的返回值是 ( )

A.3

B.4

C.5

D.6


参考答案

更多 “ 串的操作函数str定义为: int str(char*s){ char*p=s; while(*p!=’\0')p++; return p=s; } 则str("abcde")的返回值是 ( )A.3B.4C.5D.6 ” 相关考题
考题 以下函数 fun 的功能是返回 str 所指字符串中以形参 c 中字符开头的后续字符串的首地址 , 例如 : st r所指字符串为 : Hello! , c 中的字符为 e ,则函数返回字符串 : ello! 的首地址。若 str 所指字符串为空串或不包含 c 中的字符,则函数返回 NULL 。请填空。char *fun(char *str,char c){ int n=0; char *p=str;if(p!=NULL)while(p[n]!=cp[n]!='\0') n++;if(p[n]=='\0') return NULL;return( 【 1 2 】 );}

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

考题 ●试题五阅读以下程序说明和C程序,将应填入(n)处的子句,写在答卷纸的对应栏内。【程序说明】函数int commstr(char *str1,char *str2,int *sublen)从两已知字符串str1和str2中,找出它们的所有最长的公共子串。如果最长公共子串不止1个,函数将把它们全部找出并输出。约定空串不作为公共子串。函数将最长公共子串的长度送入由参数sublen所指的变量中,并返回字符串str1和str2的最长公共子串的个数。如果字符串str1和str2没有公共子串,约定最长公共子串的个数和最长公共子串的长度均为0。【程序】int strlen(char *s){char *t=s;while(*++);return t-s-1;}intcommstr(char)*str1,char *str2,int *sublen{char*s1,*s2;int count=0,len1,len2,k,j,i,p;len1=strlen(str1);len2=strlen(str2);if(len1len2){s1=str1;s2=str2;}else{len2=len1;s1=str2;s2=str1;}for(j=len2;j0;j--)/*从可能最长子串开始寻找*{for(k=0; (1) =len2;k++)/*k为子串s2的开始位置*/{for(i=0;s1[ (2) ]!='\0';i++;)/* i为子串s1的开始位置*/{/* s1的子串与s2的子串比较*/for(p=0;pj) (3) ;p++);if ( (4) )/*如果两子串相同*/{for(p=0);pj;p++}/*输出子串*/printf("%c",s2[k+p]);printf("\n");count++;/* 计数增1*/}}}if (count0)break;*sublen=(count0)? (5) :0;return count;}

考题 以下正确的程序段是 ()。 A.char str[2]; scanf("%s",B. char *p; scanf("%s",p);C. char str[20]; scnaf("%s",D. char str[20],*p=str; scanf("%s",p[2]);

考题 下列程序中的函数strcpy2()实现字符串两次复制,即将t所指字符串复制两次到s所指内存空间中,合并形成一个新字符串。例如,若t所指字符串为:efgh,调用strcpy2后,s所指字符串为:efghefgh。请填空。#include stdio.h#include string.hvoid 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);}

考题 请补充函数fun(),该函数的功能是:依次取出字符串中所有的小写字母以形成新的字符串,并取代原字符串。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。试题程序:include<stdio.h>include<conio.h>void fun(char *s){int i=0;char *p=s;while(【 】){if (*p>='a'*p<='z'){s[i]=*p;【 】;}p++;}s[i]=【 】;}main(){char str[80];clrscr();printf("\nEnter a string:");gets(str);printf("\n\nThe string is:\%s\n",str);fun(str);printf("\n\nThe string of changingis:\%s\n",str);}

考题 以下正确的程序段是A.cgar str[20]; scanf(“%s",str);B.char *p; scanf("%s",p);C.cha str[20]; scanf("%s",str[2])D.char str[20],*p=str; scanf("%s",p[2]);

考题 有如下程序: include using namespace std; int main() { char st 有如下程序: #include <iostream> using namespace std; int main() { char str[100], *p; cout<<"Please input a string:"; cin>>str; p=str; for (int i=0; *p!='\0'; p++,i++); cout<<i<<endl; return 0; }运行这个程序时,若输入字符串为 abcdefgabcd则输出结果是A.7B.12C.13D.100

考题 设有如下函数定义int f(char *s) {char *p=s;while(*p!=’\0’) p++;return(p-s);}在主函数中用coutA、3B、4C、5D、6

考题 阅读以下函数说明和C语言函数,将应填入(n)的字句写在答题纸的对应栏内。[说明1]函数int fun1(int m, int n)的功能是:计算并返回正整数m和n的最大公约数。[函数1]int fun1(int m, int n){while ((1)) {if (m>n) m=m-n;else n=n-m;}(2);}[说明2]函数long fun2(char*str)的功能是:自左至右顺序取出非空字符串str中的数字字符形成一个十进制整数(最多8位)。例如,若字符串str的值为“f3g8d5.ji2e3p12fkp”,则函数返回值为3852312。[函数2]long fun2(char *str){int i=0;long k=0;char *p=str;while (*p!='\0' (3)) {if (*p>='0' *p<='9') {k=(4)+ *p - '0';++i;}(5);}return k;}

考题 阅读下列函数说明和C函数,将应填入(n)处的字句写在对应栏内。[函数2.1说明]函数strcpy的功能是将字符串str2的内容复制到字符申str1。[函数2.1](1) strcpy (char *slr1, const char *str2){ char * temp;while( * str2!='\0') *cp++ =(2);(3)='\0';return str1;}[函数2.2说明]函数int strcmp(const char *str1, const char *str2)的功能是按字典序比较两个字符串str1和str2的大小。当str1<str2时返回-1,当str1>str2时返回1,否则返回0。[函数2.2]int strcmp(const char *str1, const char *str2){ while( *str1= =* str2) {if(* s1= =(4)) return 0;s1++;(5);}if( *str1<*str2) return -1;return 1;}

考题 请补充函数fun,该函数的功能是比较字符串str1和str2的大小,井返回比较的结果。例如: 当str1=“cdef",str2=“cde”时,函数fun()返回“>”。注意:部分源程序给出如下。请勿改动主函数main 和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。试题程序:include< stdio, h>include<conio. h>define N 80char *fun (char *str1,char *str2){char *p1=str1, *p2=str2;while (*p1 *p2 ){if (【 】)return "<";if(【 】)return ">";p1++;p2++;}if (*p1=*p2)return "==";if (*p1==【 】)return "<";elsereturn ">";}main(){char str1 [N], str2 [N];clrscr ();printf ("Input str1: \n");gets (str1);printf ("Input str2: \n");gets (str2);printf ("\n*****the result*****\n");printf ("\nstr1 %s str2", fun (str1, str2) );}

考题 以下程序运行后的输出结果是( )。includechar*ss(char*s){char*p,t;P=s+1;t=*s;while(*p){ *(P-1)=*P;P++;}*(P-1)=t;return s;}main(){char*p,str[10]="abcdefgh";p=ss(str);printf("%s\n",p);}

考题 阅读以下程序说明和C程序,将应填入(n)处的子句,写在对应栏内。【程序说明】函数int commstr(char * str1,char * str2,int * sublen)从两已知字符串str1和str2中,找出它们的所有最长的公共子串。如果最长公共子串不止1个,函数将把它们全部找出并输出。约定空串不作为公共子串。函数将最长公共子串的长度送入由参数sublen所指的变量中,并返回字符串str1和str2的最长公共子串的个数。如果字符串str1和str2没有公共子串,约定最长公共子串的个数和最长公共子串的长度均为0。【程序】int strlen(char * s){char *t=s;while( * ++);return t-s-1;}int commstr(char) *str1,char *str2,int *sublen{ char*s1, *s2;int count=0,len1 ,len2,k,j,i,p;len1:=strlen(str1)len2 = strlen(str2);if(len1>len2){s1=str1 ;s2=str2;}else {len2 = len1;s1 = str2;s2 = str1;}for(j=len2;j>0;j--) /*从可能最长子串开始寻找*/{for(k=0;(1)<:len2;k++) /*k为子串s2的开始位置*/{for(i=0;s1[(2)]!='\0';i++;) /*i为子串s1的开始位置*/{ /*s1的子串与s2的子串比较*/for (p=0;p<j)(3);p++);if ((4)) /*如果两子串相同*/{for(p=0);p<j;p++} /*输出子串*/printf ("%c",s2[k+p]);printf ("\n");count++;/*计数增1 */}}}if (count>0) break;*sublen=(count>0)?(5):0;return count;}

考题 请补充函数fun(),该函数的功能是判断一个数是否为回文数。当字符串是回文时,函数返回字符申:yes!,否则函数返回字符串:no!,并在主函数中输出。所谓回文即正向与反向的拼写都一样,例如:abcba。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。试题程序:include<string.h>include<stdio.h>char *fun(char*str){char *p1,*p2;int i, t=0;p1=str;p2=str+strlen(str)-1;for (i=0;【 】;i++)if(【 】){t=1;break;}if (【 】)return("yes!");elsereturn("no!");}main(){char str[50];printf("Input;");scanf("%s",str);printf("%s\n",fun(str));}

考题 函数check()用来判断字符串s是否是“回文”(顺读和倒读都一样的字符串称为“回文”,如abcba)。若是回文,函数返回值为1;否则返回值为0。请完成此函数的定义。注意:部分源程序已存在考生文件夹的文件PROC7.cpp中。请勿修改主函数和其他函数中的任何内容,仅在函数check()的花括号中填写若干语句。文件PROC7.cpp的内容如下://PROC7.cppinclude<iostream>include<string>using namespace std;int check(char*s);int main(){char str[100],*p;cout<<"Input your string!";cin>>str;p=str;cout<<"The result is:"<<check(p)<<end1;}int check(char*s){// * * * * + * * *}

考题 下列程序的输出结果是______。 char*fun(char*str,int n) { int i; char*p=str; for(i=0;i<10;i++,str++) *str='a'+i; return++p; } main() { char a[10]; printf("%s\n",fun(a,10)); }A.ABCDEFGHIJB.abcdefghijC.bcdefghijD.不确定的值

考题 以下函数fun的功能是返回str所指字符串中以形参c中字符开头的后续字符串的首地址,例如,str所指字符串为Hello!,c中的字符为e,则函数返回字符串ello!的首地址。若str所指字符串为空或不包含c中的字符,则函数返回NULL,请填空。char *fun(char *str,char c){ int n=0; char *p=str; if(p!=NULL) while(p[n]!=cp[n]!=’\0’) n++; if(p[n]==’\0’) return NULL; return();}

考题 设有如下函数定义,则输出结果为______。 char*fun (char*str) {char*p=str; while(*p) { if(*p>'d') continue; p++; } return p; } main() { printf("%s\n",fun("welcome!")); }A.welcome!B.come!C.wD.程序陷入死循环中

考题 以下正确的程序段是A.cgar str[20]; scanf("%s",str);B.char*p; scanf("%s",p);C.char str[20]; scanf("%s",str[2])D.char str[20],*p=str; scanf("%s",p[2]);

考题 设有如下函数定义。若在主函数中用语句cout<<f("good")调用上述函数,则输出结果为(48)。 int f(char *s){ char *p=s; while(*p! ='\0')p++; return(p-s); }A.3B.4C.5D.6

考题 以下程序的输出结果是()。includeint fun (char*s){char *p=s;while (*p!='\0,) p++ 以下程序的输出结果是( )。 #include<iostream.h> int fun (char*s) { char *p=s; while (*p!='\0,) p++: return (p-s): } void main() { cout<<fun (" ABCDEF ")<<endl: }A.3B.6C.8D.0

考题 请补充函数fun(),该函数的功能是:把一个字符串中的字符(字母)按从小到大排序,并把这个全部由字母组成的字符串保存在原串中,函数返回这个字符串的长度。例如;输入“cixbr2.3”,如果为bcirx,字符串长度为5。注意:部分源程序给出如下.请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。include <stdio.h>define N 20int fun (char *str){int i=0,j=0,k=-0,m=0;char t;char *p=str;while(*p){if((*p>='A'*p<='Z')||(*p>='a'*p<='z'))【 】p++;}*(str+i)='\0';【 】;while(*(p+j)){k=j;【 】;while (*(p+k)){if(*(p+k)<*(str+m){t=*(str+m);*(str+m)=*(p+k);*(p+k)=t;}k++;}j++;}return i; }main(){char str[81];iht n;clrscr();printf("Input the original string ");gets(str);printf("*** The Original string ***In");puts(str);printf("*** The nwe string ***\n");n=fun(str);puts(str);printf("***The length of new string is:%d***\n",n);}

考题 字符串str由数字字符‘0’和‘1’组成(长度不超过8个字符),可看作二进制数,请补充函数fun(),该函数的功能是:把str字符串转换成十进制数,结果由函数返回。例如,输入“1001”,结果输出:9。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。试题程序:include<stdio.h>include<stdlib.h>include<string.h>int fun(char *str){int n;char *p=str;【 】;p++;while (*p){n=【 】;p++;}return【 】;}main(){char str[9];int i;int n;printf ("Enter a string made up of '0' and'1' digital character:");gets (str);if (strlen(str)>8){printf ("Error:string too longer!please input again !\n\n");exit(0);}for(i=0;str[i];i++)if(str[i]<'0'||str[i]>'1'){printf("Error:%c not is '0'and'1' digital character !\n\n",str[i]);exit(0);}printf("The original string:");puts(str);n=fun(str);printf("\n%s is convered to decimalnumber:%d\n\n",str,n);}

考题 下列程序中,正确的为______。A.main() { int *pb=b; float 1>=15.25; print f("%d\n" ,*pb); }B.amin() { int a,*pa; a=10; *pa=a; prinffC%d",*pa); }C.main() { char s[20]; char *ps=s; scanf("%s",*p); printf("%s",*p); }D.main() { char str[10]; int *ps=str[0]; str="abcdefg"; printf("%s",*p); }

考题 设有如下函数定义,则输出结果为_______。 char*fun(char*str) { char*p=str; while(*p) {if(*p>'d')continue; p++; } return p; } main() { printf("%s\n",fun("welcome!")); }A.welcomeB.come!C.wD.程序进入死循环

考题 阅读以下说明和C函数,填补函数代码中的空缺,将解答填入答题纸的对应栏内。 [说明1] 函数f(double eps)的功能是:利用公式 计算并返回π的近似值。 [C函数1] double f(doubleeps) { double n=1.0, s=1.0, term=1.0, pi=0.0; while ( fabs(term) >=eps ){ pi=pi+term; n= ______; s= ______; term=s/n; } return pi*4; } [说明2] 函数fun(char *str)的功能是:自左至右顺序取出非空字符串str中的数字字符,形成一个十进制整数(最多8位)。例如,若str中的字符串为"iyt?67kp f3g8d5.j4ia2e3p12",则函数返回值为67385423。 [C函数2] long fun(char*str) { int i=0; long num: 0; char *p = str; while ( i<8 ++i; } ______; } return num; }