C语言,输入一个字符串,判断它是不是“yes”,我这样为什么不行啊?

main()
{
char a[4],*p=a;
scanf("%s",p);
if (a[4]=="yes")
{
printf("haha\n");
}
getch();
}
那怎么样才行?
我我我我不用函数行吗?

第1个回答  2011-03-26
不用函数的办法
#include<stdio.h>
main()
{
char a[4],*p=a,b[]="yes";
int equal=1,i;
scanf("%s",p);
for(i=0;a[i]!='\0'&&b[i]!='\0';i++)
{
if(a[i]!=b[i])
{
equal=0;
break;
}
}
if(equal==1&&a[i]=='\0'&&b[i]=='\0')
printf("haha\n");
getch();
}本回答被提问者采纳
第2个回答  2011-03-26
“yes"是一个 字符串 对字符串不能简单的用 “==”来比较,c语言中有字符串比较的库函数,你查下吧具体是那个,好像是cmp()什么的( if (a[4]=="yes"))
第3个回答  2011-03-26
#include<stdio.h>
#include<string.h> //包含头文件

void main()
{
char a[4],*p = a;
scanf("%s", p);
if (strcmp(a, "yes") == 0) //用strcmp进行比较
{
printf("haha\n");
}
}
第4个回答  2011-04-01
断回文数程序

#include "stdio.h"
main()
{char string[80];
int i,j,n;
gets(string);
n=strlen(string);
j=n-1;
for (i=0;i<j;i++,j--)
if (string[i]!=string[j])break;
if(i==j)printf("Yes\n");
else printf ("No\n");
}
另外,虚机团上产品团购,超级便宜
第5个回答  2011-04-01
char a[4]是字符类型(是单个),yes是个字符串
相似回答
大家正在搜