当前位置:首页 » 编程语言 » c语言比较字符是否相同的
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言比较字符是否相同的

发布时间: 2022-01-20 04:51:06

c语言程序,怎样比较判断两个字符串是否相同

printf("输入年数:");
scanf("%d",&z);
printf("输入月日:");
scanf("%d",&x);
你不已经分开输入年了么?月日一样做不就可以?

㈡ C语言中判断两个字符串是否相同的方法

C语言提供了几个标准库函数,可以比较两个字符串是否相同。以下是用strcmp()函数比较字符串的一个例子:

#include <stdio. h>
#include <string. h>
void main (void);
void main(void)
{
char* str_1 = "abc" ; char * str_2 = "abc" ; char* str_3 = "ABC" ;
if (strcmp(str_1, str_2) == 0)
printf("str_1 is equal to str_2. \n");
else
printf("str_1 is not equal to str_2. \n");
if (strcmp(str_1, str_3) == 0)
printf("str_1 is equal to str_3.\n");
else
printf("str_1 is not equalto str_3.\n");
}

上例的打印输出如下所示:
str_1 is equal to str_2.
str_1 is not equal to str_3.

strcmp()函数有两个参数,即要比较的两个字符串。strcmp()函数对两个字符串进行大小写敏感的(case-sensitiVe)和字典式的(lexicographic)比较,并返回下列值之一:
----------------------------------------------------
返 回 值 意 义
----------------------------------------------------
<0 第一个字符串小于第二个字符串
0 两个字符串相等 ·
>0 第一个字符串大于第二个字符串
----------------------------------------------------
在上例中,当比较str_1(即“abc”)和str_2(即“abc”)时,strcmp()函数的返回值为0。然而,当比较str_1(即"abc")和str_3(即"ABC")时,strcmp()函数返回一个大于0的值,因为按ASCII顺序字符串“ABC”小于“abc”。
strcmp()函数有许多变体,它们的基本功能是相同的,都是比较两个字符串,但其它地方稍有差别。下表列出了C语言提供的与strcmp()函数类似的一些函数:
-----------------------------------------------------------------
函 数 名 作 用
-----------------------------------------------------------------
strcmp() 对两个字符串进行大小写敏感的比较
strcmpi() 对两个字符串进行大小写不敏感的比较
stricmp() 同strcmpi()
strncmp() 对两个字符串的一部分进行大小写敏感的比较
strnicmp() 对两个字符串的一部分进行大小写不敏感的比较
-----------------------------------------------------------------
在前面的例子中,如果用strcmpi()函数代替strcmp()函数,则程序将认为字符串“ABC”等于“abc”。

㈢ c语言怎么判断两个字符串是否一样

可以使用strcmp函数,其包含在string.h中。

  1. 原型:extern int strcmp(char *s1,char * s2);

  2. 用法:#include <string.h>

  3. 功能:比较字符串s1和s2

  4. 说明:当s1<s2时,返回值<0;当s1=s2时,返回值=0;当s1>s2时,返回值>0

也可以自己编写一个函数。

#include<stdio.h>
#include<string.h>

intmain(){
char*s1A="abc",*s1B="abc";
char*s2A="abcd",*s2B="abcde";

puts("使用strcmp函数");
printf("s1A=%s、s1B=%s ",s1A,s1B);
if(strcmp(s1A,s1B)==0)
printf("s1A与s1B相同! ");
else
printf("s1A与s1B不同! ");
putchar(' ');

printf("s2A=%s、s2B=%s ",s2A,s2B);
if(strcmp(s2A,s2B)==0)
printf("s2A与s2B相同! ");
else
printf("s2A与s2B不同! ");
putchar(' ');

puts("使用自定义strCompar函数");
printf("s1A=%s、s1B=%s ",s1A,s1B);
if(strCompar(s1A,s1B)==1)
printf("s1A与s1B相同! ");
else
printf("s1A与s1B不同! ");
putchar(' ');

printf("s2A=%s、s2B=%s ",s2A,s2B);
if(strCompar(s2A,s2B)==1)
printf("s2A与s2B相同! ");
else
printf("s2A与s2B不同! ");
putchar(' ');

return0;
}

/*两字符串相同返回1;不同返回0*/
intstrCompar(char*s1,char*s2){
while(*s1||*s2){
if(*s1++!=*s2++)
return0;
}
return1;
}

运行结果

㈣ C语言 比较两个字符是否一样

自己写个程序,两个字符直接相减 ,==0则相同!=0即不同

㈤ c语言程序,怎样判断两个字符串相等并且输出相同的那个结果

#include <stdio.h>
#include <stdlib.h>
int main()
{
char c[3]={'6','8'};//假定这是密码 3 = 2 + 1
char d[11]={'0','1','2','3','4','5','6','7','8','9'};
for (int i=0; i<10; i++)

for (int j=0; j<10; j++) {
char e[3] = { d[i], d[j] };
if (strcmp(e,c)==0)
printf("密码运算成功!密码为%s\n", e);
}
}

㈥ C++中判断两个字符串是否相等,怎么判断

可以使用库函数strcmp判断,具体如下:

strcmp是C语言比较字符串的库函数,形式为int strcmp(char *a, char *b);

该函数会对a和b的每个字符,按照ascii码值比较,如果二者完全相同返回0;如果a的ascii码值先出现较大者,会返回1;否则返回-1。

所以,要判断字符串相等,可以使用。

(6)c语言比较字符是否相同的扩展阅读:

关于上述strcmp()函数比较字符串的例子

#include <stdio.h>

#include <string.h>

int main(void)

{

char str_1[] = "abc";

char str_2[] = "abc";

char str_3[] = "ABC";

if (strcmp(str_1, str_2) == 0)

printf("str_1 is equal to str_2. ");

else

printf("str_1 is not equal to str_2. ");

if (strcmp(str_1, str_3) == 0)

printf("str_1 is equal to str_3. ");

else

printf("str_1 is not equal to str_3. ");

return 0;

}

参考资料来源:字符串-网络

㈦ C语言 比较字符串中是否 包含 相同 函数

int any(char s1[], char s2[])
{
int i;
int j;
int pos;

pos = -1;

for(i = 0; pos == -1 && s1[i] != '\0'; i++)
{
for(j = 0; pos == -1 && s2[j] != '\0'; j++)
{
if(s2[j] == s1[i])
{
pos = i;
}
}
}取s1的第i位,然后从s2的第j位开始找,找到两个字符相等,把i赋给pos变量,然后退出循环,如果没有找到相等的,会对比完字符串直到两个字符串的尾巴为止。这个函数大概是想找到两个字符串的同步头吧

㈧ C语言中怎么判断两个字符串是相同的.

strcmp

原型:extern int strcmp(char *s1,char * s2);

用法:#include <string.h>

功能:比较字符串s1和s2。

说明:
当s1<s2时,返回值<0
当s1=s2时,返回值=0
当s1>s2时,返回值>0

举例:

// strcmp.c

#include <syslib.h>
#include <string.h>

main()
{
char *s1="Hello, Programmers!";
char *s2="Hello, programmers!";
int r;

clrscr();

r=strcmp(s1,s2);
if(!r)
printf("s1 and s2 are identical");
else
if(r<0)
printf("s1 less than s2");
else
printf("s1 greater than s2");

getchar();
return 0;
}

相关函数:bcmp,memcmp,stricmp,strncmp

㈨ C语言中如何比较两个【字符】或者【字符串】是否相等

C语言中用strcmp函数比较字符和字符串是否相等。

strcmp函数功能是比较两个字符串的大小,返回比较的结果。

函数形式:strcmp(str1,str2)

参数说明:str1,str2可以是字符串常量或变量。

结果说明:

①返回值小于0,说明str1小于str2。

②返回值等于0,说明str1与str2相等。

③返回值大于0,s说明str1大于str2。

㈩ C语言中怎么判断两个字符相同

不能这样比较。

  1. 首先,'有'不是ASCII码,它占两个字节。char b是ASCII码,占一个字节。

  2. 你的程序中,a是一个字符串,b是一个字符,两个类型不一样,不能用strcmp比较。

如果你想比较,可以这样:

#include<stdio.h>
#include<string.h>
intmain()
{
chara,b;
a='y';
b=getchar();
if(a==b)
printf("两字都是y ");
else
printf("第二个字不是y ");
return0;
}