题目
[主观题]
2.26现在给你一个任务,写一个函数用来判定一个字符串是否比另一个更长。前提是你要用字符串库函数strlen,它的声明如下: /* Prototype for library function strlen */ size_t strlen(const char *s); 最开始你写的函数是这样的: /* Determine whether string s is longer than string t */ /* WARNING: This function is buggy */ int strlonger(char *s, char *t) { return strlen(s) – strlen(t) > 0; } 当你在一些示例数据上测试这个函数时,一切似乎都是正确的。进一步研究发现在头文件stdio.h中数据类型size_t是定义成unsigned int的。 A. 在什么情况下,这个函数会产生不正确的结果? B. 解释为什么会出现这样不正确的结果。 C. 说明如何修
答案
void proc(char arr[M][N],char*b) { int i,j,k=0; for(i=0;i for(j=0;.rr[i][j]!=\0 ;j++)//由于每行的个数不等,因此用a[i][j]!=\0 来作为循环结束的条件 b[k++]=arr[il[j]; //把二维数组中的元素茄到b的一维数组中, b[k]=\0; //最后把b赋\0作为字符串结束的标志 } 【解析】字符串数组中每一行都是一个一个完整的字符串,其结束标志为\0 。因此,通过字符串的结束标志来判断每一个字符串是否结束,将字符串数组中的所有字符串均赋值新的一维数组b来完成字符串的合并。
更多“2.26现在给你一个任务,写一个函数用来判定一个字符串是否比另一个更长。前提是你要用字符串库函数strlen,它的声明如下: /* Prototype for library function str…”相关的问题
第1题
有一个字符串,通过指针,将此字符串中从第m个字符开始的n个字符复制到另一个字符串。
点击查看答案
第2题
回文序列是指正读反读均相同的字符序列,如“abba”和“abdba”均是回文,但“good”不是回文。试写一个算法判定给定的字符串是否为回文序列。
点击查看答案
第3题
使用C语言库函数的gets函数输入字符串时,字符串可以包含空格。
点击查看答案
第4题
使用C语言库函数的gets函数输入字符串时,字符串可以包含空格。
点击查看答案
第5题
第一行写一个985整型常数第二行写一个'a'字符常量第三行写一个1.5浮点常量第四行写一个"Hello World"的字符串
点击查看答案
第6题
第一行写一个985整型常数第二行写一个'a'字符常量第三行写一个1.5浮点常量第四行写一个"Hello World"的字符串
点击查看答案
第7题
从键盘输入一个字符串,在不使用strlen()函数的情况下求字符串中的字符个数。
点击查看答案
第8题
编写一个函数,将一个整数字符串转换成一个整数。如将“2345”转换为整数2345。
点击查看答案
第9题
如果要比较两个字符串是否相同,可使用的库函数是 。
点击查看答案
第10题
设计一个字符串类(Mystring),除具有一般的输入输出字符串的功能外,还要求具有计算字符串长度、连接两个字符串等功能,其中求字符串长度和连接字符串功能不能直接调用字符串处理函数。再编写主函数对该类进行测试。
点击查看答案