一道C程序设计题关于字符串连接
字符串连接 编一程序,将两个字符串连接起来。结果取代第一个字符串。 要求 1、用字符数组,不用strcat函数; 2、用C标准中的strcat函数; [实验提示] 1、采用字符数组的方法。算法:定义的两个字符数组,第一个数组的大小应大于两个字符数组的有效大小。在串接时要注意字符处结束标志:如下图所示: Str1[20] I L O V E \0 [实验提示] 1、采用字符数组的方法。算法:定义的两个字符数组,第一个数组的大小应大于两个字符数组的有效大小。在串接时要注意字符处结束标志:如下图所示: Str1[20] I L O V E \0 Str2[10] C + + \0 串接后:str1[20] I L O V E C + + \0 串接过程: 1)首先找到第一个字符串的结束标志即末尾str1[5]。 2)执行str1[5+i] = str[i] 直到str[i] != ‘\0’ 3)给字符串str1末尾添加‘\0’ 2、函数原形 strcat(char[],const char[])使用时实参只需给出数组名,如 strcat(str1,str2)使用时要确保str1数组不会溢出。
有输入的吗?======================#include#include#defineSIZE120#defineSIZE210voidmain(){charStr1[SIZE1],Str2[SIZE2];intLen1,Len2;printf("PleaseInputString1(Length=SIZE1){printf(" ");return;}for(i=0;i<=Len2;i++)Str1[Len1+i]=Str2[i];//strcat(Str1,Str2);printf("NewString1:");puts(Str1);}===================说明:现在是按要求1的。代码中for(i=0;i<=Len2;i++)Str1[Len1+i]=Str2[i];//strcat(Str1,Str2);把上面那行注释掉,用下面那行的话就是要求2的。
什么乱东东? 代码不难写的 strcat(char[] str1,const char[] str2) { char *p=str1,*q=str2; int i; for(;*p;p++); for(;*q;p++,q++) *p=*q; }
答:#include "stdio.h" main() { float income,fax=0; printf("Please input the income:...详情>>
问:挺简单的一C函数,不过我是初学者,暂时还不会写,请好心人多多帮忙!
答:int mystrlen(char *str) { int n = 0; while (*str) { n++; str++;} return n; } voi...详情>>