感谢各位大佬百忙之中来看我的题解(虽然这题水的一批)~~
题目描述
小 K 同学向小 P 同学发送了一个长度为 8 的 01 字符串 来玩数字游戏,小 P 同学想要知道字符串中究竟有多少个 1。
注意:01 字符串为每一个字符是 0 或者 1 的字符串,如“101”(不含双引号)为一个长度为 3 的 01 字符串。
输入格式
共一行,包含一个长度为 8 的 01 字符串 s。
输出格式
共一行,包含一个整数,即 01 字符串中 字符 1 的个数。
数据范围
对于 20% 的数据,保证输入的字符全部为 0。
对于 100% 的数据,输入只可能包含字符 0 和字符 1,字符串长度固定为 8。
由于此题简单的一批,就不带样例啦~~
本题其实主要就是枚举一下输入的这串数字(当然也可以理解为字符串)中包含着几个“1”(不带引号),下面附上数字和字符串的两种解法~~
解法一(字符形式):
#include<iostream>
using namespace std;
int main()
{
char ch;
int res=0;
while(cin>>ch) if(ch=='1') res++;
cout<<res;
return 0;
}
解法二(数字形式):
#include<iostream>
using namespace std;
int main()
{
int a,res=0;
cin>>a;
while(a)
{
if(a%10==1) res++;
a/=10;
}
cout<<res;
return 0;
}
还有一种是用字符串形式,其实就类似于解法一了,但是还要枚举每一个字符,稍微会多几行,这边不给打了。
前排占位,👍👍👍