C++编写函数,实现两个字符串的连接。在主函数中调用该函数并输出结果,从键盘输入这两个字符串。

作者&投稿:巢亨 (若有异议请与网页底部的电邮联系)
1、c++编写将一个整数n转换成字符串的函数。在主函数中调用该函数并输出结果,从键盘输入n的值。~

#include "stdafx.h"
#include
using namespace std;

void tran(char ch[],int n)
{
int i=0,j=0;
char temp;
//对n分别取最低位,储存在字符数组中
do{
ch[i++]=n%10+48; //0的ASCII码为48,所以要数值加48;同时,i自增
}while(n/=10); //当(n=n/10)!=0时,循环继续

ch[i]='\0';//循环结束,加字符串结束符代替
for(i--;i>j;i--,j++) {temp=ch[i];ch[i]=ch[j];ch[j]=temp;}//此前ch[]低位在前,今将其倒置

}

void main()
{
int n;
char str[20];

cout<<"请输入一个整数:";
cin>>n;
tran(str,n);
cout<<str<<endl;
}

你输出的是函数的地址,是个十六进制数。
改了一下,你试试看:
#include
char *str(char[],int n);
void main()
{
int n;
char a[80];
cout<<"请输入一个任意整数n:";
cin>>n;

cout<<"转换后的字符串为:"<<str(a,n)<<endl;
}
char *str(char ch[],int n) //返回指针
{
int i=0,j=0;
char a;
do{
ch[i++]=n%10+48;
}while(n/=10);
ch[i]='\0';

for(i--;i>j;i--,j++)
{
a=ch[i];
ch[i]=ch[j];
ch[j]=a;
}
return ch; //返回数组的首地址
}

#include
using namespace std;
int sum(int a,int b)
{return a+b;
}
int main()
{int i,j;
cout<<"请输入二个整数:"<<endl;
cin>>i>>j;
cout<<i<<"+"<<j<<"="<<sum(i,j)<<endl;
return 0;
}

#include<iostream>
#include<string>

using namespace std;

string concat(string a, string b) {
return a + b;
}

void main()
{
string a = "aaa";
string b = "bbb";
cout << concat(a, b);
}

简单解释一下,这里调用C++自带的string library,所以我们直接可以用string类型来处理字符串。自己编写的函数concat很简单,就是将两个字符串a和b连接起来,并返还一个字符串。这里主函数就不多解释了。输出结果是aaabbb,你可以自己试一下。



#include #include using namespace std;void devide(double const data){ int integer = static_cast(data); double decimal = data - integer; cout<<"您输入数据的整数部分是:">data; devide(data); } return 0;}我发现cout输出小部分会截断,所以使用了一个显示格式

#include"stdio.h"
#include"string.h"
char *fun(char *str1,char *str2)
{
char *str=str1;
while(*str!='\0')
str++;
while(*str2!='\0')
*str++=*str2++;
*str='\0';
return(str);
}
main()
{
char str1[50],str2[50];
char *str;
printf("从键盘输入两个字符串,将它们合成一个新字符创。\n");
printf("输入第一个字符串:\n");
gets(str1);
printf("输入第二个字符串:\n");
gets(str2);
str=fun(str1,str2);
puts(str);
}


已知一个数组{1,3,5,7,9},编写一个函数,实现对该数组各个数进行平方 运 ...
void square(int*in, int*out, int n){ for (int i = 0; i < n; i++){ out[i] = in[i] * in[i];} } int main(){ int a[5] = { 1,3,5,7,9 };int b[5] = { 0 };square(a, b, 5);for (int i = 0; i < 5; i++){ printf("%d ", b[i]);} ...

C语言编程题,求编写一个函数,实现字符串逆置?
#include <stdio.h> include <string.h> void reverse(char *x){ char c;int a=0,b=strlen(x)-1;for(;a

c#,编写一个函数,实现对给定一个整型数组中的每个元素进行逆序重新存 ...
按照题目要求编写的逆序存放数组元素的函数的C#程序如下 using System;class E{ static void Reverse(int[] arr){ int i,temp;for(i=0;i<=(int)(arr.Length\/2);i++){ temp=arr[i];arr[i]=arr[arr.Length-1-i];arr[arr.Length-1-i]=temp;} for(i=0;i<arr.Length;i++){ Conso...

C语言编写一个自主函数,实现输入两个数,通过调用A和B编写的函数,求出两...
参考代码如下:include<stdio.h> double add(double x, double y){ return x+y;} double sub(double x, double y){ return x-y;} int main(){ double a,b;scanf("%lf%lf",&a,&b);printf("%.2lf\\n",add(a,b));printf("%.2lf\\n",sub(a,b));return 0;} ...

编写程序调用一个函数来实现对不同长度整型数组的排序(左小右大)和...
您好,很高兴为您作答。以下是一个使用冒泡排序算法对整型数组进行排序的示例程序:排序函数和输出函数 主程序和示例演示 include <stdio.h> void bubble_sort(int arr[], int n) { int i, j, temp;for (i = 0; i < n - 1; i++) { for (j = 0; j < n - i - 1; j++) {...

编写一个函数,实现从字符串中删除指定的字符。同一字符的大、小写按...
include <stdio.h> include <string.h> define max 100 void delchar(char *str1,char *del){ char *p,*q;int i=strlen(del);while((p=strstr(str1,del))!=NULL)\/\/查找del是否为str1的子串,如果是返回第一个匹配的第一个字符的指针,如果不是返回NULL { q=p+i;\/\/q指向str1中第一...

编写函数fun,实现功能:根据对x的输入,返回x的阶乘
include <stdio.h> int myfac_n (int n ){ int s = 1 , i ;for (i=1 ; i<=n ; i++ ){ s=s*i;} return s ;} void main(){ int x , ans ;scanf ("%d" ,&x ) ;ans = myfac_n( x ) ;printf ("%d" , ans ) ;getchar();} 函数(function),名称出自数学...

c语言编程题,编写一个函数,实现n阶方阵的转置(即行列互换)急急急...
include <stdio.h> include <stdlib.h> int main(){ int a[3][3]={1,2,3,4,5,6,7,8,9};int j,i,temp;for(i=0;i<3;i++)for(j=0;j<3;j++)scanf("%d",&a[i][j]);for(i=1;i<2;i++)for(j=0;j<=i;j++){ temp=a[i][j];a[i][j]=a[j][i];a[j...

c语言编写函数,用指针实现矩阵相加,并且将结果矩阵的指针作为函数返回值...
include "stdio.h"include "stdlib.h"int **matrixAdd(int x1[][3],int x2[][3],int row,int col){ int **a=NULL;int i,j;a=(int **)malloc(row*sizeof(int *));for(i=0;i<row;i++)a[i]=(int *)malloc(col*sizeof(int));for(i=0;i<row;i++)for(j=0;j...

编写C语言函数实现输出1! 2! 3!\/不用for,while,goto等循环
参考代码如下:include<stdio.h>double fac(int n){ if(n<=1) return 1; return fac(n-1)*n;}int main(){ int n; scanf("%d",&n); printf("%.0lf\\n",fac(n));\/\/n!}

政和县17392725677: 用C++编写2个字符串相接
司马杭好及: 有一种字符串连接函数strcat 用法如下: strcat(str1,str2) 其中str1和str2可以是字符串指针或者字符串数组 预处理命令应包含: #include"string.h"

政和县17392725677: 编程实现两字符串连接C++ -
司马杭好及: 既然楼上用了while 那么我也用下把 来个更简洁的#include <iostream> using namespace std; int main() { char str_a[32] = "Hello!"; char str_b[16] = "www.baidu.com"; int i=0, j=0; while(str_a[i++]); i--; while(str_a[i++]=str_b[j++]); cout << str_a << endl; return 0; }

政和县17392725677: C++编程:重载“+”运算符实现两个字符串的连接 -
司马杭好及: #include <iostream.h> #include <assert.h> char*mystrcpy(char *strDest , const char *strSrc){assert((strDest!=NULL) && (strSrc!=NULL));char *temp = strDest;while((*strDest++ = *strSrc++)!='\0');return temp;} int mystrlen(const char *array) {int...

政和县17392725677: 写一函数,将两个字符串连接 -
司马杭好及: void mystrcat(char *s1,char *s2) { while(*s1++); s1--; while(*s1++ = *s2++); }

政和县17392725677: c++中如何自定义一个函数实现字符串链接?? -
司马杭好及: char *cat(char *a,char *b) { int x,i; x=strlen(a)+strlen(b); char *c=new char[x+1]; for(i=0;ic[i]=a[i]; for(i=strlen(a);ic[i]=b[i]; return c; } 如果长度有不用系统函数,可以定义长度为足够长 遇到'\0'时,结束

政和县17392725677: C++编程实现两个字符串的连接.要求使用字符数组保存字.. -
司马杭好及: string str1="hello "; string str2="world"; char* str=(str1+str2).c_str(); 这样str就能当做c字符串操作了

政和县17392725677: c++中 写一个两个字符串相连接的函数:char *strcat(char *s1,const char *s2) 其作用是将s2接到s1的末端 -
司马杭好及: #include <iostream.h> char *strcat(char *s1, const char *s2) { char *p; p = s1; while(*p) p++; while(*p++ = *s2++); return s1; } int main() { char s1[10] = "abc"; char s2[4] = "123"; char *p = strcat(s1, s2); cout << p << endl; return 0; }

政和县17392725677: 编写函数,实现两个字符串的连接,并将连接后的结果存放在第一个字符串中? -
司马杭好及: #include "stdio.h" void sappend(char *a,char *b) { while(*a)a++; while(*a++=*b++); }main() { char t[80],s[80]; puts("输入第一个字符串:"); gets(s); puts("输入第二个字符串:"); gets(t); sappend(s,t); puts("结果是:"); puts(s); }其实写这个没什么意思,因为C已经有标准的库函数了,在String.h里,有Strcat函数,直接就完成了.

政和县17392725677: C++如何将两个字符串“绑定”在一起 -
司马杭好及: 一种方法是将ID和name定义到一个结构体中,以结构体定义学生数组[10],然后按结构体成员name进行排序,交换时,交换结构体变量,可以做到name和ID同时交换.另一种方法是,采用选择或冒泡法进行排序,交换name的同时,将对应的ID也进行交换.

政和县17392725677: c++中,编写一个程序,将两个字符串了连接起来,结果取代第一个字符串.要求用string方法. -
司马杭好及: 代码如下看看是否可行? //连接两个字符串 #include<stdio.h> #include<string.h> #include<stdlib.h> #include<assert.h> char* strcat1(char *strDest , const char *strSrc)//Strcat函数原型如下:将源字符串加const,表明其为输入参数,不会改变其内...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网