标题:麻烦帮我看下这个程序有啥问题,刚学c++不怎么会,谢谢
只看楼主
闪光点覅给
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2015-10-19
结帖率:0
已结贴  问题点数:20 回复次数:4 
麻烦帮我看下这个程序有啥问题,刚学c++不怎么会,谢谢
#include<iostream>
using namespace std;
int main(){
    char s1[20],s2[20];
    puts(s1);
    puts(s2);
        int r,i;
        for(i=0;s1[i]!='\0'&&s2[i]!='\0';i++){
            if (s1[i]>s2[i]){
                return r=1;
                cout<<"r= "<<r<<endl;
            }
            else if(s1[i]<s2[i]){
                return r=-1;
                cout<<"r= "<<r<<endl;
            }
            else
                continue;
    }
    if(s1[i]=='\0'&&s2[i]=='\0'){
        return r=0;
        cout<<"r= "<<r<<endl;
    }
    else if(s1[i]!='\0'&&s2[i]=='\0'){
        return r=1;
        cout<<"r= "<<r<<endl;
    }
    else
        return r=-1;
        cout<<"r= "<<r<<endl;
    return 0;


}
2015-10-19 17:01
ITCD
Rank: 2
等 级:论坛游民
威 望:2
帖 子:16
专家分:18
注 册:2012-11-26
得分:5 
照书写的还是自己写的?
2015-10-19 22:05
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
得分:5 
return语句是要为main函数给出返回值吗?如果只是想给r赋值,是不能要"return"的。其实这个程序没有什么实际意义,你的s1, s2都没有赋值,执行结果如何还没开始就已经注定了,不需要编程来观察。
2015-10-20 07:58
农民工
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:21
帖 子:109
专家分:639
注 册:2015-8-22
得分:5 
先说明下 这程序的作用
2015-10-20 08:48
小林111
Rank: 1
等 级:新手上路
帖 子:29
专家分:5
注 册:2015-8-5
得分:5 
后面的if 语句在前面for语句中已经有判断了,没什么意义,若要输出r,为什么要用return r呢?



[此贴子已经被作者于2015-10-20 11:45编辑过]

2015-10-20 11:42



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-458328-1-1.html




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

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