来地球玩 2021-12-23 21:51 采纳率: 90%
浏览 35
已结题

C++输入都是数字输出1否则输出0

int flag = 1;//标记是否遇到了除数字以外的字符
for (int i = 0; i < str.length(); i++) {
    if (!isdigit(str[i])) {
        flag = 0;//输入含有除数字以外的字符,flag的值发生改变
        break;
    }
}
return flag;



int flag=0;
string str;
printf("%s",&str);
isnum(str);
if(flag=1)
 printf("1");
if(flag=0)
 printf("0"); 
  • 写回答

1条回答 默认 最新

  • 书山客 2021-12-23 22:15
    关注
    
    #include<iostream>
    #include<string>
    using namespace std;
    int isnum(string str) {
        int flag = 1;//标记是否遇到了除数字以外的字符
        for (int i = 0; i < str.length(); i++) {
            if (str[i]>='0'&&str[i]<='9') {
                flag = 0;//输入含有除数字以外的字符,flag的值发生改变
                break;
            }
        }
        return flag;
    }
    
    void main() {
        int flag = 0;
        string str;
        cin >> str;
        flag=isnum(str);
        if (flag == 1)
            cout<< '1' <<endl;
        if (flag == 0)
            cout << '0'<<endl;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月31日
  • 已采纳回答 12月23日
  • 创建了问题 12月23日