问题描述:
要求:将输入S1,S2.将S1第N个字符前复制到S3,在S3后跟S2,再将S1从N字 符的内容跟再S3后我现在就最后步不知道怎么赋值过去.请帮帮忙谢谢!
#include <stdio.h>
main()
{
static char s1[10],s2[10],s3[20]
int n,i
printf("input s1\n")
gets(s1)
printf("input s2\n")
gets(s2)
printf("input n\n")
scanf("%d",&n)
for (i=0i<ni++)
s3[i]=s1[i]
strcat(s3,s2)
for (i=n-1i<ni++)就是这里开始出错了!谢谢!
strcat(s3,s1[i])
printf("%s\n",s3)
}
解析:
#include <stdio.h>
#include <string.h>
int main(int argc, char* argv[])
{
static char s1[10],s2[10],s3[20]
int n,i
printf("input s1\n")
gets(s1)
printf("input s2\n")
gets(s2)
printf("input n\n")
scanf("%d",&n)
for (i=0i<ni++)
s3[i]=s1[i]
strcat(s3,s2)
for (i=n-1i<ni++)就是这里开始出错了!谢谢!
strcat(s3,s1[i])
strcat(s3,&s1[n])
printf("%s\n",s3)
return 0
}
方法如下:
#include <stdio.h>
void main()
{
char s[10][80]
for(i=01<10i++)
{
gets(s[i])
}
}
扩展资料:
C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
C语言常用词汇有:
条件 condition
变量 variant
过程 process
优先 priority
运算 operation
返回值 return value
函数 function
声明 declare
参数 parameter
静态的 static
外部的 extern
引用 reference
元素 element
地址 address
排序 sort
字符 character
字符串 string
应用 application
指针 pointer
参数 argument
数组 array
声明 declaration
表示 represent
处理 manipulate
成员 member
标记 tag
函数 function
枚举 enumerate
联合 ( 共用体 ) union
创建 create
插入 insert
删除 delete
修改 modify
在C语言中,可以用字符数组来存储字符串。如果要把一个字符串存到数组中,可以先定义一个字符数组,然后用字符串复制函数把字符串内容复制到数组中。例如,如果要把字符串"abcd"存储到数组a的第一个元素中,可以这样做:
char a[10][5] // 定义一个10行5列的字符数组
strcpy(a[0], "abcd") // 把字符串"abcd"复制到a的第一个元素中
在这个例子中,定义了一个10行5列的字符数组a,其中每个元素可以存储一个长度为4的字符串(因为最后一个字符需要用于存储字符串结束符'\0')。然后用strcpy()函数把字符串"abcd"复制到a的第一个元素中。
另外,也可以使用指针数组来存储字符串,即定义一个指针数组,每个指针指向一个字符串,例如:
char* a[10] // 定义一个指针数组,每个指针指向一个字符串
a[0] = "abcd" // 把字符串"abcd"的地址赋值给a的第一个元素
这里需要注意的是,把一个字符串赋值给指针数组的元素时,实际上是把该字符串的地址赋值给指针,而不是把字符串内容复制到数组中。因此,在使用指针数组存储字符串时,需要确保该字符串的生命周期与指针数组的生命周期相同,否则可能会出现指针悬空等问题。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)