#include <stdio.h>
#include <string.h>
int main() {
char str1[20];
char *str2;
printf("enter string \n"); **// using %c input**
scanf("%c",str1);
printf(" string 1 is %s \n",str1);
printf("enter string 2 \n");
scanf("%s",*str2); //using %s input
printf(" string 1 and 2 is %c and %s \n",str1,str2);**strong text**
int a=strcmp(str1,str2); //**comparing both**
printf("%d",a);
return 0;
}
使用%c和%s从用户获取输入,然后使用strcmp比较字符串的相等性
2条答案
按热度按时间mzsu5hc01#
%c
读取一个字符,但不添加终止空字符,因此必须添加该字符才能将数据用作字符串。str2
之前,必须将缓冲区分配给str2
。scanf()
中的%s
需要指针char*
,因此应传递str2
而不是*str2
。printf()
中的%c
需要int
,而不是char*
,因此必须遵从指针(从数组自动转换而来)。试试这个:
o2g1uqev2#
注:当输入字符串2时,逐个字符输入值。例如:-输入str 2:
在你完成你的单词后,按两次回车键。