如何在C语言中判断一个变量为一个字符串!!

比如说我输入一段文字我要在这段文字里找出一个词语我用while循环,我声明一个char变量,循环条件是这个变量等于我要找的词语,!!!我是做一个班长选举的程序,直接输入班... 比如说我输入一段文字我要在这段文字里找出一个词语我用while循环,我声明一个char 变量,循环条件是这个变量等于我要找的词语,!!!
我是做一个班长选举的程序,直接输入班里同学每个人所支持的竞选人,再从所输入的名字中分别计算出每个名字出现的次数,并要排序!
展开
 我来答
红利当头
2010-09-03 · TA获得超过5118个赞
知道大有可为答主
回答量:1653
采纳率:0%
帮助的人:1558万
展开全部
空格不算是空字符串,str=""这样的才算是空字符串,里面什么都没有,而str=" "是有内容了,这个str存储了一个字符(空格),如果你要把空格也算是空字符串,那么要稍作修改:
char str[] = " ";
int len = strlen(str), i = 0;
if (len 0)
{
while(i len str[i++] == ' ');
if (i len) // 字符串不空
else // 空字符串
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kobeailanlan
2010-08-18 · TA获得超过570个赞
知道小有建树答主
回答量:841
采纳率:0%
帮助的人:807万
展开全部
我写了个,你自己改改:(其实最好还得用struct来写,那样比较规范。)#include <stdio.h>
#include <string.h>
int main()
{
char s[4][20]={"xiaohong","xiaowang","xiaobai","xiaoxiao"};
char s1[10][20];
int a[4]={0,0,0,0},i,j;
printf("请输入同学姓名:\n");
for(i=0;i<10;i++)
{
scanf("%s",&s1[i]);
for(j=0;j<4;j++)
{
if(strcmp(s[j],s1[i])==0)
{
a[j]=a[j]+1;
//printf("eaf\n");
break;
}
}
}
for(i=0;i<4;i++)
{
printf("选%s的人数为%d\n",s[i],a[i]);
}
return 0;
}
输入方式:
xiaobai
xiaohong
xiaolu
xiaohong
xiaohong
xiaohong
xiaobai
xiaoxiao
xiaoxiao
xiaowang
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友d3e418b2c
2010-08-18 · TA获得超过2195个赞
知道大有可为答主
回答量:1361
采纳率:0%
帮助的人:1687万
展开全部
和一个字符串相比较,肯定不可能用char,你得用一个字符串指针或数组
char str[]="abc";
if (0 == strcmp(str,"abc"))
{
//相等
}
else
{
//不相等
}

嗯,想法很好,也很容易做到
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
恋晴忽忽
2010-08-18 · TA获得超过531个赞
知道答主
回答量:184
采纳率:0%
帮助的人:157万
展开全部
用一个结构体
struct{
char name[];
int num;}stu;
stu a,b,c;
然后初始化,名字输入,票数num=0;
if(strcmp(str,“a.name”)==0)a.num++;
if(strcmp(str,“b.name”==0))b.num++;
if………………
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式