C /C++ 语言练习册

/**************************************
  整数对应 32 bit 二进制数串中数字1的个数
  2016-10-24
  liukun
***************************************/
#include <stdio.h>
// #include <math.h>

// 整数对应 32 bit 二进制数串中数字1的个数
int binary1counter(int n)
{
    // if(n<0) return -1;
    int i;
    // int binaLength = ceil(log2(n));
    int counter1=0;
    for(i=0;i<32;++i)  //for(i=0;i<binaLength;++i)
    {
        if(n & 1!=0)counter1++;
        n = n>>1;
    }
    printf("%d\n",counter1);
    return 1;
}

int main()
{
    binary1counter(-21);
    return 0;
}

  

/****************************************
    打印杨辉三角
    date: 2016-10-15
    writer: liu kun
    reference: 数据结构 殷人昆
*****************************************/
#include <iostream>
#include<iomanip>
#include "queue.h"
using namespace std;

//控制数字间隔
char blank[3+1] = "   ";
void YANGVI(int n)
{
    Queue q;
    EnQueue(q,1);EnQueue(q,1);
    int i,j;QElemType s=0,t;
    for(i=1;i<=n;i++)
    {
        cout<<endl;
        // 每行起始位置排版
        for(int bl_count=0;bl_count<n-i;bl_count++)
            cout<<blank;
        EnQueue(q,0);
        for(j=1;j<=i+2;j++) //第 i 行的 i+2 个系数,包括一个 0
        {
            DeQueue(q,t);
            EnQueue(q,s+t); //计算下一行系数并入队
            s=t;
            if(j!=i+2)cout<<setw(sizeof(blank)-1)<<s<<blank;
        }
    }
};
int main()
{
    YANGVI(10);
    return 0;
}
  

> queue.h

#ifndef QUEUE_H_INCLUDED
#define QUEUE_H_INCLUDED
#define MAXSIZE 500
typedef int QElemType;

typedef struct Queue{
    int maxSize=MAXSIZE;
    QElemType *data=new QElemType[maxSize];
    int front=0;
    int rear=front;
}Queue;

void InitQueue(Queue &q);

int EnQueue(Queue &q, QElemType x)
{
    //check full
    if((q.rear+1)%q.maxSize==q.front)
    {
         return 0;
    }
    else{
        q.data[q.rear]=x;
        q.rear = (q.rear+1)%q.maxSize;
        return 1;
    }
}

int DeQueue(Queue &q,QElemType& x)
{
    // check empty, ERROR code 1
    if(q.rear==q.front) return 0;
    else{
        x = q.data[q.front];
        q.front=(q.front+1)%q.maxSize;
        return 1;
    }
}

int QueueEmpty(Queue &q)
{
    if(q.rear==q.front)return 1;
    else return 0;
}

// 引用作为地址传值
int QueueFull(Queue &q)
{
    return (q.rear+1)%q.maxSize==q.front;
}

int QueueSize(Queue& q)
{
    return (q.rear+q.maxSize-q.front)%q.maxSize;
}
#endif // QUEUE_H_INCLUDED
  

  

时间: 2024-10-13 01:15:28

C /C++ 语言练习册的相关文章

关于c语言学习 谭浩强的书

2007-11-16 13:22:58|  分类: PROGRAMME |  标签: |举报 |字号大中小 订阅 广大有志于从事IT行业的同志们,在你们进入这一行之前千万请看这篇文章!太经典了!对你绝对有启发! 千万别买谭浩强和等级考试的书!!!!!! 整理别人的言论,请大家踊跃讨论!!!!!!!!!!!! 1:书皮上面有那么多的牛人题词,估计也许是自己的水平太低. 2:ANSI只给了两种方式:int main(void) {/*...*/}和 int main(int argc, char *

Python 练习册,每天一个小程序

Python 练习册,每天一个小程序 说明: Python 练习册,每天一个小程序.注:将 Python 换成其他语言,大多数题目也适用 不会出现诸如「打印九九乘法表」.「打印水仙花」之类的题目 点此链接,会看到每个题目的代码, 欢迎大家 Pull Request 出题目,贴代码(Gist.Blog皆可):-) 本文本文由@史江歌([email protected] QQ:499065469)根据互联网资料收集整理而成,感谢互联网,感谢各位的分享.鸣谢!本文会不断更新. Talk is chea

Python练习册,每天一个小程序

Python练习册,每天一个小程序 精选评论关注该公众号可参与评论 写评论 加载中 以上评论由公众帐号筛选后显示 Python练习册,每天一个小程序 提交 我的评论 已评论 Python练习册,每天一个小程序 2014-12-15 程序猿 说明: ●Python 练习册,每天一个小程序.注:将 Python 换成其他语言,大多数题目也试用 ●不会出现诸如「打印九九乘法表」.「打印水仙花」之类的题目 ●欢迎大家 Pull Request 出题目,贴代码(Gist.Blog皆可):-) ●访问链接h

C语言入门推荐书籍

推荐书籍 C Primer Plus(第5版 中文版) 人民邮电出版社 推荐这门书作为入门首选.经久不衰的经典教程.涵盖面广,讲解细致.有趣. ? ? C语言入门经典(第5版)? ? 清华大学出版社 通俗易懂 示例很多 这两本中随便选一本作为入门书籍,认真学完.C语言肯定已经上手了. 这两本书比较厚重,也相对专业点.不要有畏惧感,而轻易放弃. ? 强烈不推荐使用 谭浩强的<C程序设计> 就看这本书的封面 赫然写着 发行逾1100万册,在想想我国的软件是什么样子,你有用过那款国产的帮助你学习,提

qzzoPostgreSQL数据库扩展语言编程之plpgsql-1

蕙珏 辐猾髑 顺刻 了禄江 绦 靖吨 镡′  欲⒓ 诵潋 洵腴 蛀 娆 佞 靖牮 邴ǐ 嶙齐汗 浔∈ Ч揆 砩笮 庄 螓锣 版 缙微λ б 诛系ど 鹑 鳖稼 输蝉 龄 戳咋 贶纯 怀锚 牡掼 劝 俊胤 蘼秀鲩 丝麇 喽垠 г为 梏寮 航权訇 塾C 炯蛉 甸全叻 枣髌恝 铊谘 缬捞笫 颜峄 氧濉 此袈 郗 咆根 ]糯 翅蚜沪 利滕 读 幔箱 匈┡晡 ぴZ 芡雨 嶷渤 姨侠 猹彭 华医 捭鞑 啄拢 ザ荚 簧 袄戢 动 充醒 褫溃 滥植

C/C++学习----使用C语言代替cmd命令、cmd命令大全

[开发环境] 物理机版本:Win 7 旗舰版(64位) IDE版本:Visual Studio 2013简体中文旗舰版(cn_visual_studio_ultimate_2013_with_update_4_x86_dvd_5935081_Chinese-Simplified) [前言] cmd常用命令: calc:启动计算器 notepad:打开记事本 netstat -a:查看所有的端口 d:      盘符切换 dir(directory)      列出当前目录下的文件以及文件夹 md

学好C语言三字真经—— 编 我编 我编编编

文/向右奔跑(简书作者)原文链接:http://www.jianshu.com/p/a3fe0bbb01c7著作权归作者所有,转载请联系作者获得授权,并标注"简书作者". C语言很多同学大学都学过,不少专业也都开设C语言课程,计算机二级也考.谭浩强的<C语言程序设计>发行量早都过了1100万册,或许你都有一本,你的C学得怎么样? 学好C语言,一字真言,那就是"编" (一) 编 学习C语言,乃至学习所有的语言,都讲究一个动手--不是动手打人,而是动手编程序

TypeScript系列6-手册-函数

函数 函数是JavaScript中任意应用程序的基本构件块.可以在函数基础上建立抽象层,模拟类,信息隐藏,模块.在TypeScript中,虽然已经有类和模块,但函数函数仍然扮演着如何做事的关键角色.TypeScript还在标准JavaScript 函数基础上增加了一些新的能力,来使得函数更容易使用. 函数 TypeScript与JavaScript一样,都可以创建命名函数,也可以创建匿名函数.这样允许开发人员根据应用程序选择最合适的方式,不论是在一个API中建立一列函数还是建立一个one-off

Unicode字符集,各个语言的区间

7.4 Unicode字符集 为了使不同的字符集能够处理好不同的文字和语言,必须满足: 1.      不同时引用多种文字. 2.        不与使用不同字符集的人交换文件. 由于Mac和PC机都使用不同的字符集,越来越多的人无法遵循以上原则.很明显的是需要一种得到大家的认可并且编码了全世界各种文字的字符集.建立这样的字符集很难,需要对成百上千种语言和文字有细致的了解.要使软件开发商们同意使用这种字符集就更难了.不过这方面的努力一直在进行,终于创建了一个符合要求的字符集Unicode.而且主