| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4038 人关注过本帖
标题:关于if语句括号内表达式问题。
只看楼主 加入收藏
刘定邦
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:687
专家分:1570
注 册:2010-9-21
收藏
得分:0 
比较字符串大小。要用字符串比较函数:
strcmp(字符串1,字符串2) // 用这个要加上字符串的头文件 #include<string.h>
2011-02-26 23:54
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:0 
以下是引用kingwoeway在2011-2-26 23:48:16的发言:

那么 该怎样修改呢 ?

笨人菜鸟,代码仅供参考。
程序代码:
root@~ #cat 1.c
#include <stdio.h>
#include <stdbool.h>

int main (void) {
        bool equalstring (char str[],char s[]);
        char str[10];

        printf ("Input your name,something amazing will happen:");
        gets(str);

        if(equalstring(str,"wuwei")==1) { printf ("cool\n"); }
        else if(equalstring(str,"pan")==1) { printf ("fool\n"); }
        else printf ("haha,great fool\n");


        return 0;

}
bool equalstring (char str[],char s[]) {

        int i=0;
        bool isequal;
        while(str[i]==s[i] && str[i]!='\0' && s[i]!='\0')
                i++;
        if(str[i]=='\0' && s[i]=='\0')
                isequal=true;
        else
                isequal=false;
        return isequal;
}

编译并测试:
root@~ #gcc 1.c -o 1
root@~ #./1
Input your name,something amazing will happen:pan
fool
root@~ #./1
Input your name,something amazing will happen:wuwei
cool
root@~ #./1
Input your name,something amazing will happen:lee
haha,great fool
root@~ #

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-02-27 00:01
pcbaichi
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:486
专家分:1185
注 册:2010-11-13
收藏
得分:0 
我觉得不用字符串就可以

免费赠送河蟹一只
2011-02-27 00:03
kingwoeway
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2010-6-24
收藏
得分:0 
回复 9楼 刘定邦
感谢感谢。。 太感谢了。。
2011-02-27 00:14
刘定邦
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:687
专家分:1570
注 册:2010-9-21
收藏
得分:0 
客气..
2011-02-27 00:17
tpengti
Rank: 2
等 级:论坛游民
帖 子:75
专家分:18
注 册:2010-5-9
收藏
得分:3 
#include "Stdio.h"
#include "Conio.h"
#include <string.h>
main()
{
  char str[10];
  char cool[] = "wuwei";
 char fool[] = "pan";

  printf("Input your name,something amazing will happen:") ;
  gets(str);

  if(strcmp(str,cool) == 0)    //此处更改
  {
    printf("cool");
    }
  else if(strcmp(str,fool) == 0)////此处更改
  {
  printf("fool");
  }

   else
{
   printf("Haha,great fool");
    }
  getch();

}

没有开发不了的软件,只有开发不了的大脑
2011-02-27 10:22
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:0 
修改饿了一下,下面的==1多余,去掉了。
程序代码:
// if(equalstring(str,"wuwei")==1) { printf ("cool\n"); }
if(equalstring(str,"wuwei")) { printf ("cool\n"); }
//else if(equalstring(str,"pan")==1) { printf ("fool\n"); }
 else if(equalstring(str,"pan")) { printf ("fool\n"); }

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-02-27 15:51
liangjinchao
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:376
专家分:697
注 册:2010-11-8
收藏
得分:3 
括号里不能有分号

因为有了因为,所以有了所以,既然已成既然,何必再说何必
2011-02-27 16:04
format123
Rank: 2
等 级:论坛游民
帖 子:35
专家分:60
注 册:2010-11-26
收藏
得分:3 
#include "iostream"
#include "Conio.h"
#include "string"
using namespace std;

main()
{
  string str;

  printf("Input your name,something amazing will happen:") ;
  cin>>str;

    if(str=="wuwei")
    {
        cout<<"cool"<<endl;
    }
    else if(str=="pan")
    {
        cout<<"fool"<<endl;
    }

    else
    {
        cout<<"Haha,great fool"<<endl;
    }
    getch();

}
2011-02-27 22:23
快速回复:关于if语句括号内表达式问题。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031156 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved