编写一个程序,将两个字符串连接起来,并输出(不要使用strcat函数)。用C语言求解详细过程。

#include<stdio.h>

void main()

{

char s1[80],s2[40];

int i=0,j=0;

printf("
input stringl:");

scanf("%s",s1);

printf("input string2:");

scanf("%s",s2);

while(s1[i]!='\0')

i++;

while(s2[j]!='\0')

s1[i++]=s2[j++];

s1[i]='\0';

printf("The new string is:%s
",s1);

}

扩展资料:

main函数用法

1、C++中的main函数

C++继承了C语言的大部分特性,因此保留了“程序总是从main函数开始执行,且总是默认从main函数的return语句或结尾处结束运行”这一传统,但是要注意,C++中的main函数要想作为程序执行的出入口,必须写在全局(Global)范围,

不能写成某个结构体或某个类的成员。虽然main函数可以作为结构体或者类的成员函数,但相应地会失去作为程序出入口的功能。

C++中全局main函数的书写格式与C语言完全相同,功能也完全相同,且同一C++程序同样只能有一个全局main函数。

2、Java中的main函数

Java同样是以main函数作为程序执行出入口的,但Java作为“更纯洁”的面向对象语言,它的main函数与C/C++有很大的不同。

首先,返回值的概念淡化,在Java Application中main不允许返回值,因此int main是被禁止的,必须使用void main,int main仅限在JavaBean中使用。

其次,Java中所有的函数必须属于类,没有什么全局函数一说,因此main函数不能是全局成员,必须是某个类的成员。

第三,由于main函数变成了类的成员函数,因此要想直接被系统调用,还必须使用public static使其成为静态函数并具有公开权限。

第四,main函数的参数被简化,只需要提供字符串数组即可,不需要提供参数个数(这是由于Java的数组具有下标检查功能的原因)

Java Application中的main函数一般格式如下(类名可以自定义,但保存为Java源码时,主文件名必须与类名相同,否则可能无法运行)

public class MainDemo{

public static void main(String[]args){

//TODO:在此处写入主函数的内容

}

}

Java Applet的运行机制与Java Application完全不同,因此不需要main函数

3、C#中的main函数

C#中的main函数与Java大同小异,同样必须是类成员,同样使用字符串数组作唯一参数,同样是静态函数,同样的void main,

与之不同的是:main的首字母变成了大写,即"Main函数“,且是否限定为public级别已经无所谓了(默认没有public,但某些场合可能还是需要public)

另外,需要注意的是,C#中不再有”类名必须与主文件名同名“的限制,即使类名不和主文件名相同,程序照样可以运行。

C#应用程序中的main函数默认是这样的(注意main的首字母已是大写)

C#和C/C++、java不同的是C#不在拘泥于必须从main()函数开始执行,C#是属于事件触发。

class Program{

static void Main(string[]args){



  • 缂栧啓涓涓▼搴,灏嗕袱涓瓧绗︿覆杩炴帴璧锋潵,骞惰緭鍑(涓嶈浣跨敤strcat鍑芥暟)銆傜敤C...
    绛旓細printf("The new string is:%s\n",s1);}
  • 缂栧啓涓涓▼搴,灏嗕袱涓瓧绗︿覆杩炴帴璧锋潵,骞惰緭鍑(涓嶈浣跨敤strcat鍑芥暟)銆傜敤C...
    绛旓細printf("The new string is:%s\n",s1);}
  • 缂栦竴绋嬪簭,灏嗕袱涓瓧绗︿覆杩炴帴璧锋潵,缁撴灉鍙栦唬绗涓涓瀛楃涓层傛眰绋嬪簭瑙g瓟
    绛旓細scanf("%s%s",s1,s2); //杈撳叆涓や釜瀛楃涓while(s1[i]) //鐩殑鏄i鎸囧悜 绗涓涓瀛楃涓茬殑鏈鍚庝綅缃 '\0'鎵鍦ㄤ綅缃甶++;while(s2[j]) //姝ゅ惊鐜氨鏄皢绗簩瀛楃涓插唴瀹瑰姞鍒扮涓瀛楃涓叉渶鍚 鐩村埌s2 '\0's1[i++]=s2[j++];s1[i]='\0'; //杩炴帴缁撴潫鍚 鍦ㄦ渶鍚庡姞缁撴潫绗rintf("The result is:%s\n"...
  • ...涓瓧绗︿覆鐨勮繛鎺(瑕佹眰灏嗙浜屼釜瀛楃涓茶繛鎺鍒扮涓涓瀛楃涓茬殑鏈熬...
    绛旓細char *p3; //杩斿洖鐨勫瓧绗︽寚閽,鍑芥暟涓繕鍏呭綋涓浆 p3=p1; // while ( *p1++ != '\0' ) num1++; //绗涓涓瀛楃涓茬殑闀垮害 p1=p3; p3=p2; while(*p2++!='\0') num2++; //绗浜屼釜瀛楃涓鐨勯暱搴 p2=p3; p3=(char *)malloc((num1+num2+1)*sizeof(char)); for (i=0;i<num1;i++) *(...
  • C璇█缂栫▼棰樼洰?
    绛旓細涓嬮潰鏄涓涓鍙互鍒╃敤鎸囬拡灏嗕袱涓瓧绗︿覆杩炴帴璧锋潵鐨 C 璇█绋嬪簭銆傝绋嬪簭瀹氫箟浜嗕竴涓瓙鍑芥暟 `StrCat`锛岀敤浜庡皢涓や釜瀛楃涓茶繛鎺ヨ捣鏉ワ紝骞惰繑鍥炶繛鎺ュ悗鐨勭粨鏋溿備富鍑芥暟涓紝鎴戜滑鍏堜粠鏍囧噯杈撳叆璇诲叆涓や釜瀛楃涓诧紝鐒跺悗鏍规嵁瀹冧滑鐨勯暱搴﹁皟鐢 `StrCat` 鍑芥暟锛屽皢瀹冧滑杩炴帴璧锋潵骞惰緭鍑虹粨鏋溿俙``c include <stdio.h> include <...
  • 缂栦竴涓▼搴,灏嗕袱涓瓧绗︿覆杩炴帴璧锋潵,(1)鐢╯trcat鍑芥暟(2)涓嶇敤strcat鍑芥暟...
    绛旓細锛2锛変笉鐢╯trcat鍑芥暟 include <stdio.h> include <string.h> define N 200 define M 100 int main(void){ char str1[N],str2[M];int cou1 = 0,cou2 = 0;// 鍒濆鍖栦笅鏍 printf("input string1:\n");// 鎻愮ず杈撳叆瀛楃涓1 gets(str1);// 杈撳叆瀛楃涓1 printf("input string2:\n"...
  • 缂栧啓鍜岃緭鍑涓や釜瀛楃涓,灏绗浜屼釜瀛楃涓茶繛鎺鍒扮涓涓瀛楃涓插悗闈,鏋勬垚涓...
    绛旓細include<iostream>using namaspace std;void main(){ string s,s1; cin>>s>>s1; cout<<"s="<<s<<" s1="<<s1<<endl; s=s+s1;cout<<s<<endl;}
  • C璇█缂栫▼:5銆缂栦竴涓▼搴,灏嗕袱涓瓧绗︿覆杩炴帴璧锋潵,涓嶈鐢╯trcat鍑芥暟._鐧惧害...
    绛旓細include<stdio.h>void mystrcat(char a[],char b[]){//瀛楃涓茶繛鎺鍑芥暟 int i=0,j=0;while(a[i++]!='\0');//鎵惧埌a鐨勭粨鏉熶綅缃 i--;while(b[j]!='\0'){//鎶奲鍏冪礌璧嬪煎埌a涓 a[i++]=b[j++];} a[i]='\0';//鍔犱笂缁撴潫鏍囧織 }int main(){char a[100],b[100];scanf(...
  • 4.缂栧啓涓绋嬪簭,灏嗕袱涓瓧绗︿覆杩炴帴璧锋潵,缁撴灉鍙栦唬绗涓涓瀛楃涓层
    绛旓細int main(void){ char a[80],b[80];int i,j;gets(a);gets(b);j=strlen(a);i=0;while(b[i]!='\0'){ a[j+i]=b[i];i++;} a[i+j]='\0';puts(a);return 0;} 鎴栬皟鐢ㄥ嚱鏁板疄鐜帮細include "stdio.h"include "string.h"int main(void){ char a[80],b[80];gets(a...
  • C璇█闂 缂栧啓涓绋嬪簭灏嗕袱涓瓧绗︿覆杩璧锋潵
    绛旓細include <stdio.h>#include <string.h>int main (){ char str1[10],str2[5],*p,i;//杩欓噷鐢╯tr1鎺ユ敹鎷兼帴鍚庣殑瀛楃涓诧紝纭繚str1澶у皬澶熸斁锛侊紒 娉ㄦ剰瑕佺暀1浣嶄繚瀛樼粨鏉熺'\0' strcpy(str1,"abcd");strcpy(str2,"efgh"); printf("鍘熷瓧绗︿覆鍒嗗埆涓猴細%s %s\n\n",str1,str2);...
  • 扩展阅读:输入两个字符串并连接 ... 编程将两个字符串连接 ... 实现两个字符串的连接 ... 输入两个字符并输出 ... 将两个字符串连在一起 ... c#两个字符串相连接 ... 对两个字符串进行比较 ... 定义一个字符串并输出 ... c语言两个字符串连在一起 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网