C语言:编写一个函数,实现把一字符串复制到一个字符数组中。
#include
int main()
{
char a[100] = "\0",b[100] = "\0";
int i = 0;
printf("输入一行字符:
");
scanf("%s",a);
for(i = 0;a[i] != '\0';i++){
b[i] = a[i];
}
printf("%s
",b);
return 0;
}
扩展资料:使用scanf()函数需要注意的问题:
1.对于字符串数组或字符串指针变量,由于数组名可以转换为数组和指针变量名本身就是地址,因此使用scanf()函数时,不需要在它们前面加上"&"操作符。
2.可以在格式化字符串中的"%"各格式化规定符之间加入一个整数,表示任何读操作中的最大位数。
3.scanf函数中没有类似printf的精度控制。
如:scanf("%5.2f",&a); 是非法的。不能企图用此语句输入小数为2位的实数。
4.scanf中要求给出变量地址,如给出变量名则会出错
如:scanf("%d",a);是非法的,应改为scanf("%d",&a);才是合法的。
5.在输入多个数值数据时,若格式控制串中没有非格式字符作输入数据之间的间隔,则可用空格,TAB或回车作间隔。
C编译在碰到空格,TAB,回车或非法数据(如对“%d”输入“12A”时,A即为非法数据)时即认为该数据结束。
6.在输入字符数据(%c)时,若格式控制串中无非格式字符,则认为所有输入的字符均为有效字符。
思路:先遍历字符串,如果找到该字符后,把后面的所有字符复制到另一个字符串。
例如:
#include #include int main (){char ch1[]="123456789",ch2[20],a='4';int i=0,j=0;while(ch1[i++]!=a);while(ch1[i]){ch2[j++]=ch1[i++];}ch2[j]='\0';puts(ch2);return 0;}/*输出:56789 */
void strcopy( char str1[], char str2[])
{ int i;
for(i=0;str[i]!= '\0';i++)
{ str1[i]=str2[i];
s1[i]='\0';
}
}
void main()
{char str1[20];str2[20];
scanf("%s%s",str1,str2);
printf("%s",strcopy(str1,str2));
}
void strcopy(char str1[],char str2[])
{
int i=0,j=0;
while((str1[i++]=str2[j++])!='\0');
str1[i]='\0';
}
void strcopy(char str1[], char str2[])
{
int i;
for(i=0;str2[i]!= '\0';i++)
str1[i]=str2[i];
str1[i]='\0';
}
for (i = 0;i <strlen(str2);i++)
{
str1[i] = str2[i];
i++;
if (str2[i] == '\0')
break;
}
C语言编程:写一个函数,输入一行字符,将此字符串中最长的单词输出...
include <stdio.h> void main(){ int a,b,c;printf("请输入3个整数:");scanf("%d%d%d",&a,&b,&c);if((a>b)&& (a<c)|| (ac))printf("\\n d 为位于中间的数\\n",a);if((b>a)&& (b<c)|| (bc))printf("\\n d 为位于中间的数\\n",b);if((c>b)&& (c<a)|| ...
编写程序使用getchar函数接收一个字符,用printf函数显示;使用scanf函数...
main(){ char a;printf("输入第一个字符:");a = getchar();printf("%c",a);printf("输入第二个字符:");scanf("%c",&a);putchar(a);}
c语言编程 写一个函数,输入一行字符,将此字符串中最长的单词输出.用...
include "ctype.h"main(){ char str[50];char str1[50][20];char str2[20];int i,j,t;gets(str);j=0,t=0;for(i=0;str[i];i++) \/*提取字符串中的单词,但是输入时每个单词之间只允许*\/ { \/*有一个字符如空格,逗号只有句末才能用句号*\/ if(isalnum(str[i])){ str...
C语言编程,写一个函数,使输入的一个字符串按反序存放,在主函数中输入和...
include <string.h> void f(char str[]);main(){ static char str[100]; \/\/设置为静态让方法调用时改变 gets(str);f(str);puts(str);} void f(char str[]){ int len = strlen(str),i;char c;for(i=0;i<len\/2;i++){ c = str[i];str[i] = str[len -i -1];str[...
编写一个函数,输入一行字符,将此字符串中最长单词输出。
include<stdio.h> include<string.h> void longword(char s[],char t[]);\/\/定义最长单词函数 int main(){ char str[30],lg[20];gets(str);\/\/输入一行字符 longword(str,lg);\/\/调用最长单词函数 puts(lg);\/\/输出最长单词 return 0;} \/\/最长单词函数 void longword(char s[],char t...
编写strcpy(char*s,char*t)函数,实现把t指向的字符串复制到s中_百度知 ...
代码,mystrcpy include <stdio.h>void mystrcpy(char *a,char *b){while(*a != '\\0' )*b++=*a++;*b='\\0'; }int main(){char *a="test string",b[100];mystrcpy(a,b);printf("b is %s\\n",b);}
...函数编写程序,实现从键盘上输入一个字符,并将其显示在屏幕上_百度...
include <stdio.h> int main(){ char a;a=getchar();putchar(a);return 0;}
C语言编程,写一个函数,使输入的一个字符串按反序存放,在主函数中输入和...
,&a[i]);printf("反转后的字符串:");Reverse(); \/\/函数调用 } void Reverse() \/\/函数定义 { for(i=N;i>=0;i--)printf("%c ",a[i]);printf("\\n");} Reverse是反转;当然,函数名你可以任意取 这个程序对初学者来说比较好,有函数调用的方法和实现过程!
C语言怎么实现字符串的任意输入
使用gets函数即可实现输入任意字符串。1、gets函数:原型:char * gets(char * buffer);功能:从stdin流中读取字符串,直至读到换行符或EOF时停止,并将读取的结果存放在buffer指针所指向的字符数组中。换行符不作为读取串的内容,读取的换行符被转换为 \\0 空字符,并以此结束字符串;说明:当使用...
编写一个函数,将任意字符串中的的大写字母转换为小写字母,在主函数
include <stdio.h>char *to_lower(char *s){ int i; for(i = 0; s[i]; i ++) if(s[i]>='A' && s[i]<='Z') s[i]+=32; return s;}主函数你自己写一下吧 输入 调用 输出就好。