C语言中的字符和字符串

时间:2024-08-09 12:38:08

C语言在中常常出现字符和字符串,而一串字符或者字符串其实就是数组

字符数组的定义

char arr[]={'h','e','l','l','o','\0'};

而定义字符串:

char arr1[]="HELLO";

字符的输入和输出可以向一维数组那样用scanf和printf,而字符也可以用自己特定输入和输出函数gerchar和putchar,而用getchar和putchar输入一串字符

    char arr[];
int i=,j=;
char ch;
while ((ch=getchar())!='\n') {
arr[i]=ch;
i++;
}
arr[i]='\0';
while (arr[j]!='\0') {
putchar(arr[j]);
j++;
}
printf("\n");

输出结果:

C语言中的字符和字符串

字符串也有自己特定的输入和输出函数

   // gets和puts 字符串的输入和输出
char ch[];
gets(ch);
puts(ch);

C语言中的字符和字符串

字符串的相关库函数部分:需要导入头文件

#include <string.h>
  char str1[]="wfds";

    char str2[]="zfds";

    strcpy(str1, str2);//把str2复制到str1中,str1的长度要比str2大

    puts(str1);

    puts(str2);

    strcat(str1,str2);//把str2链接到str1中,总长度空间大于两个的空间

    puts(str1);

    puts(str2);

    printf("len=%lu\n",strlen(str1));//计算字符串的长度

    printf("len=%lu\n",strlen(str2));//不包括'\0'

    printf("%d\n",strcmp(str1, str2)) ;

结果:

C语言中的字符和字符串

字符函数部分:需要导入头文件

#include <ctype.h>
    char ch='a',ch1='A';
printf("%d\n",isalpha(ch));//是否为字母
printf("%d\n",isupper(ch));//是否为大写
printf("%d\n",islower(ch));//是否为小写
printf("%d\n",isdigit(ch));//是否为数字 printf("%c\n",toupper(ch));//转变为大写
printf("%C\n",tolower(ch1));//转变为小写

C语言中的字符和字符串

字符串大写变小写,小写变大写

    char ch[],ch1;
gets(ch);
int i=;
while (ch[i]!='\0') {
ch1=ch[i];
if (isupper(ch1)==) {
ch1= tolower(ch1);
}else{
ch1=toupper(ch1);
}
putchar(ch1);
i++;
}
printf("\n");

C语言中的字符和字符串

字符串转为整型或浮点型

需要导入头文件

#include <stdlib.h>
  //字符串转

    char *chs="11.52";
printf("chs=%s\n",chs);
double d=atof(chs);
int a=atoi(chs);
printf("%f\n",d);
printf("%d\n",a);

C语言中的字符和字符串

数字转字符串

 int num=;
char chs[];
//将num按照%d的格式存储到chs中
sprintf(chs,"%d",num);
printf("chs=%s\n",chs);
//将字符串按照指定的格式存储
sprintf(chs, "%10s","asdf");
printf("chs=%s",chs);

C语言中的字符和字符串