首页 > 后端开发 > C++ > 正文

计算C语言中没有连续1的二进制字符串的数量

WBOY
发布: 2023-09-04 22:09:08
转载
1151人浏览过

计算c语言中没有连续1的二进制字符串的数量

给定的任务是计算长度为 n 的所有二进制字符串中没有连续 1 的数量。

二进制数字系统是数字表示技术的一种。它在数字系统中最流行和使用。二进制系统用于表示二进制量,该二进制量可以由任何仅具有两种操作状态或可能条件的设备来表示。例如,开关只有两种状态:打开或关闭。

在二进制系统中,只有两个符号或可能的数字值,即 0 和 1。由任何只有 2 的设备表示操作状态或可能的条件。二进制字符串是那些包含二进制值的字符串,即 0 或 1

现在让我们使用示例来了解我们必须做什么 -

立即学习C语言免费学习笔记(深入)”;

输入 - n = 2

输出 - 2中没有连续1的二进制字符串的计数为:3

解释 - 00, 01, 10 因此只有 3 个长度为 n 的二进制字符串且没有连续的 1

输入 − n = 7

输出

云雀语言模型
云雀语言模型

云雀是一款由字节跳动研发的语言模型,通过便捷的自然语言交互,能够高效的完成互动对话

云雀语言模型 54
查看详情 云雀语言模型

输入 strong> - 7 中没有连续 1 的二进制字符串的计数为 - 34

下面的程序中使用的方法如下

  • 取一个输入n表示字符串长度

  • 在count函数中,我们将计算没有连续1的二进制字符串,定义两个大小为n的数组arr[]和arr_2,以及一个用于存储的变量temp

  • 将两个数组的第 0 个元素赋值为 1

  • 从 i=1 开始循环,直到 I 小于 n .

  • 在循环中,设置 arr[i] = arr[i-1]+arr_2[i-1] 和 arr_2[i] = arr[i-1]

  • 设置temp = arr[n-1]+arr_2[n-1],然后打印temp。

示例

 现场演示

#include<stdio.h>
//create function to calculate binary strings without consecutive 1&rsquo;s
void count(int num){
   int arr[num];
   int arr_2[num];
   int i=0, temp=0;
   arr[0] = arr_2[0] = 1;
   //loop till number isn't equals to 0
   for (i = 1; i < num; i++){
      arr[i] = arr[i-1] + arr_2[i-1];
      arr_2[i] = arr[i-1];
   }
   temp = arr[num-1] + arr_2[num-1];
   printf("Count of binary strings without consecutive 1&rsquo;s of %d is : %d",num,temp);
   printf("</p><p>");
}
int main(){
   //call the count function
   count(10);
   count(7);
   count(1);
   return 0;
}
登录后复制

输出

如果我们运行上面的代码,我们将得到以下输出 -

Count of binary strings without consecutive 1&rsquo;s of 10 is : 144
Count of binary strings without consecutive 1&rsquo;s of 7 is : 34
Count of binary strings without consecutive 1&rsquo;s of 1 is : 2
登录后复制

以上就是计算C语言中没有连续1的二进制字符串的数量的详细内容,更多请关注php中文网其它相关文章!

C语言速学教程(入门到精通)
C语言速学教程(入门到精通)

C语言怎么学习?C语言怎么入门?C语言在哪学?C语言怎么学才快?不用担心,这里为大家提供了C语言速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:tutorialspoint网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号