// 1. 在屏幕上输出内容
#include<iostream>
using namespace std;
int main(){
int i= 1;
cout<<"欢迎"<<endl;
cout<<'a'<<endl;
cout<<"i="<<i<<endl;
cout<<'\n';
return 0;
}
// 2.规格不同的箱子(变量)
#include<iostream>
#include<climits>
#include<cfloat>
using namespace std;
int main(){
int i; //基本整型
short j; //短整型
long k; //长整型
float ii; //单精度型
double jj; //双精度型
long double kk; //扩展双精度型 cout<<"i:("<<INT_MIN<<","<<INT_MAX<<")"<<endl; //基本整型
cout<<"i:("<<SHRT_MIN<<","<<SHRT_MAX<<")"<<endl; //短整型
cout<<"i:("<<LONG_MIN<<","<<LONG_MAX<<")"<<endl; //长整型
cout<<"i:("<<FLT_MIN<<","<<FLT_MAX<<")"<<endl; //单精度型
cout<<"i:("<<DBL_MIN<<","<<DBL_MAX<<")"<<endl; //双精度型
cout<<"i:("<<LDBL_MIN<<","<<LDBL_MAX<<")"<<endl; //扩展双精度型 return 0;
}
// 3.物品存放(变量)
#include<iostream>
using namespace std;
int main(){
int i = 1; //基本整型
short j = 2; //短整型
long k = 3; //长整型
float ii = 1.1; //单精度型
double jj = 1.234; //双精度型
long double kk = 1.23456; //扩展双精度型 cout<<"i="<<i<<endl;
cout<<"j="<<i<<endl;
cout<<"k="<<i<<endl;
cout<<"ii="<<i<<endl;
cout<<"jj="<<i<<endl;
cout<<"kk="<<i<<endl; }
// 4.交换物品(变量)
#include<iostream>
using namespace std;
int main(){
int i; //整形变量i
int j; //整形变量j
int temp; //临时变量 i = 5;
j = 10;
cout<<"i="<<i<<endl<<"j="<<j<<endl; //交换之前 //交换
temp = 1;
i = j;
j = temp; cout<<"i="<<i<<endl<<"j="<<j<<endl; //交换之后
return 0;
}
// 5.消失的重量
#include<iostream>
using namespace std;
int main(){
float i; //浮点型数值-重量1
int j; //整形数值-重量2
int sum; //总重量 i = 0.002;
j = 2;
sum = i+j; //计算总重量
cout<<"sum="<<sum<<endl; //输出 return 0;
}
// 6、游泳池的容量
#include<iostream>
using namespace std;
int main(){
int Pool_volume; //游泳池容量
int count = 10; //循环次数
while(count!=0){
cin>>Pool_volume; //输入数据
if(Pool_volume < 100) //如果小于100升,池中水没溢出
cout<<"游泳池中水没溢出,可以继续加水"<<endl;
else
cout<<"游泳池中水已满,必须停止加水或者加入另一个游泳池"<<endl;
count--;
}
return 0;
}
// 7.显示转换(类型转换)
#include<iostream>
using namespace std;
int main(){
int i = 1; //整型
float j = 2.234; //浮点型 i = (int)j; //显示类型的转换
cout<<"赋值后的i值"<<i<<endl; return 0;
}
// 8、单片机应用(位操作)
#include<iostream>
using namespace std;
int main(){
int a = 10;
int b = 2;
int c;
c = a & b;
cout<<"对a和b进行按位与后的结果为:"<<c<<endl;
c = a | b;
cout<<"对a和b进行按位或后的结果为:"<<c<<endl;
c = a ^ b;
cout<<"对a和b进行按位异或后的结果为:"<<c<<endl;
c = ~a;
cout<<"对a进行按位求反后的结果为:"<<c<<endl;
c = a<<1;
cout<<"对a向左移动一位后的结果为:"<<c<<endl;
c = a>>1;
cout<<"对a向右移动一位后的结果为:"<<c<<endl; }
//9、房间面积
#include<iostream>
using namespace std;
int main(){
int i = 1; //整型
float j = 2.234; //浮点型 i = (int)j; //显式类型转换
cout<<"赋值后的i值:"<<i<<endl; return 0;
}

//10、平分物品(/)
#include<iostream>
using namespace std;
int main(){
int apple_number = 60; //60个苹果
int people = 12; //12个人
int apple_per_people; //每个人分多少个苹果
if(people !=0){ //判断除数是否为0
apple_per_people = apple_number/people; //计算平均数
cout<<"平均分配,每个人得"<<apple_per_people<<"个苹果"<<endl;
} //输出
else
cout<<"除数为0,出现异常"<<endl; return 0;
}

//11、取余数(%)
#include<iostream>
using namespace std;
int main(){
int apple_number = 60; //一共60个苹果
int people = 7; //有7个小朋友
int apple_remain; //平均分后还剩几个苹果
if(people == 0) //判断取余数是否为0
cout<<"错误"<<endl;
else{
apple_remain = apple_number % people; //取余
cout<<"平均分配后还剩"<<apple_remain<<"个苹果"<<endl; }
return 0;
}

//12、公司组织看电影(综合)
#include<iostream>
using namespace std;
int main(){
float sum = 1000.0;
int male = 4;
int female = 4;
float ticket_value_male = 35.0;
float ticket_value_female;
ticket_value_female = ticket_value_male/2;
float remain;
int male_remain;
remain = sum - (male * ticket_value_male + female * ticket_value_female); cout<<"还剩"<<remain<<"元"<<endl;
male_remain = (int)(remain / ticket_value_female);
cout<<"剩余"<<remain<<"元还能让"<<male_remain<<"位男士看电影"<<endl; return 0;
}

//13、称水果(比较)
#include<iostream>
using namespace std;
int main(){
float fruit_weight; //水果的重量
int fruit_weight_cal; //被计算的水果重量
cout<<"输入所称水果的重量:"<<endl;
cin>>fruit_weight;
if((fruit_weight - (int)fruit_weight) < 0.5) //舍去
fruit_weight_cal = (int)fruit_weight;
else //五入
fruit_weight_cal = (int)fruit_weight + 1;
cout<<"一共有"<<fruit_weight_cal<<"斤水果需要被付钱"<<endl; return 0;
}

//14、简单算术(优先级)
#include<iostream>
using namespace std;
int level(char ch){
switch(ch){
case '!':
return 2;
break;
case '*':
return 3;
break;
case '/':
return 3;
break;
case '+':
return 3;
break;
case '-':
return 3;
break;
case '=':
return 3;
break;
default:
return -1;
break;
}
}
int main(){
char symbol[3];
int value[3];
cout<<"从!、*、/、%、+、-、=运算符中选择3个参与算术运算"<<endl;
cin>>symbol[0]>>symbol[1]>>symbol[2]; value[0]=level(symbol[0]);
value[1]=level(symbol[1]);
value[2]=level(symbol[2]); if((value[0]==-1) || (value[1]==-1) || (value[2]==-1)) //只要有一个返回负数
cout<<"库中没有输入的运算符"<<endl;
else
{
for(int i = 0;i < 3;i++){
for(int j = 1;j<3;j++){
if(value[i]>value[j]) //如果前一个大于后一个,开始交换
{
char temp;
temp = symbol[i];
symbol[i] = symbol[j];
symbol[j] = temp;
}
}
}
cout<<"依次进入运算的顺序为:"<<endl;
for(int k=0;k<3;k++)
cout<<symbol[k]<<endl;
}
return 0; }
//2.1 计算年份是否为闰年(各种运算符结合)
#include<iostream>
using namespace std;
int main(){
int year;
cin>>year;
if(year % 4 == 0)
cout<<year<<"年是闰年"<<endl;
else{
if((year % 4 == 0) && (year % 100 != 0))
cout<<year<<"年是闰年"<<endl;
else
cout<<year<<"年不是闰年"<<endl;
}
return 0;
}

//2.2 打印ASCII码表
#include<iostream>
using namespace std;
int main(){
int i = 0;
for(int rows = 0; rows < 16; rows++){
i = rows;
while(i <= 127){
switch(i){
case 7: //振铃
cout<<i<<"="<<"\\a"<<" | ";
break;
case 8: //退格
cout<<i<<"="<<"\\b"<<" | ";
break;
case 9: //水平制表符
cout<<i<<"="<<"\\t"<<" | ";
break;
case 10: //换行
cout<<i<<"="<<"\\n"<<" | ";
break;
case 11: //竖直制表符
cout<<i<<"="<<"\\v"<<" | ";
break;
case 12: //换页
cout<<i<<"="<<"\\f"<<" | ";
break;
case 13: //回车
cout<<i<<"="<<"\\r"<<" | ";
break;
default:
cout<<i<<"="<<char(i)<<" | ";
break;
}
i+=16; //每隔16个另起一列
}
cout<<endl;
}
return 0;
}

//2.3 求完数
#include<iostream>
using namespace std;
int main(){
int shu; //变量数字
cout<<"请输入一个任意的自然数:"<<endl;
cin>>shu; //输入数字
//求输入数字的所有真因子
int *zhen_yinzi = new int[shu]; //不知道真因子有多少个,所以用指针指向
int index = 0; //个数索引变量,初始化为0
int sum = 0; //所有真因子的总和
zhen_yinzi[0] = 1; //所有数字都有一个真因子为1
for(int i = 2;i< shu;i++){ //循环查找所有的因子
if(shu % i == 0){ //表示该因子为真因子
index ++;
zhen_yinzi[index] = i;
}
}
for(int j = 0;j <= index; j++){ //将所欲的真因子相加
sum += zhen_yinzi[j];
}
delete[] zhen_yinzi; //释放内存
zhen_yinzi = NULL;
if(sum == shu) //如果真因子之等于数字本身看,即为完数
cout<<"数字"<<shu<<"是完数"<<endl;
else
cout<<"数字"<<shu<<"不是完数"<<endl; return 0;
}

//2.4 密码验证(if...else)

#include<iostream>
#include<string>
using namespace std; #define Code "123456"
int main(){
cout<<"请输入密码:";
string input_code; //被验证的密码
cin>>input_code; if(input_code == Code) //如果相同,则密码为真
cout<<"密码验证成功!"<<endl;
else //为假
cout<<"密码验证失败!"<<endl; return 0;
}

// 2.5、图书管理(if...else if...else)
#include<iostream>
using namespace std;
int main(){
cout<<"图书管理系统功能:"<<endl;
cout<<"1-借书功能管理"<<endl;
cout<<"2-还书功能管理"<<endl;
cout<<"3-图书分类管理"<<endl;
cout<<"4-图书基本信息管理"<<endl;
cout<<"5-当前图书状态查询功能"<<endl;
cout<<"0-退出"<<endl;
int status;
int count = 10; while(count!=0){
cout<<"请输入您当前的选择:";
cin>>status;
if(status == 0){ //退出成功
cout<<"退出成功!"<<endl;
break;
}
else if(status == 1) //借书
cout<<"进入借书功能管理模块!"<<endl;
else if(status == 2) //还书
cout<<"进入还书功能管理模块!"<<endl;
else if(status == 3) //图书分类管理
cout<<"进入图书分类管理模块!"<<endl;
else if(status == 4) //图书基本信息
cout<<"进入图书基本信息管理模块!"<<endl;
else //查询当前图书状态
cout<<"进入当前图书状态查询功能!"<<endl;
count--;
} return 0;
}

//2.6、信号灯(++--)
#include<iostream>
using namespace std;
int main(){
int count = 1;
cout<<"灭"<<endl;
for(;count<10;) //循环
{
int a;
a = count++;
if(a%2 == 0) //偶数
cout<<"亮"<<endl;
else
cout<<"灭"<<endl;
}
return 0;
}

//2.7、 简单地获取变量的字节大小(sizeof)
#include<iostream>
using namespace std;
int main(){
int a = 6; //一个整形变量
int int_size; //整形变量的字节大小
int_size = sizeof(a); //取变量字节大小 cout<<"变量a所占的字节大小为:"<<int_size<<endl; return 0;
}

//2.8、求余下的物品书(%)
#include<iostream>
using namespace std;
int main(){
int quantity_goods = 10000; //总的物品数
int number_staff = 189; //员工数目
int goods_remain; //剩余物品 goods_remain = quantity_goods % number_staff; //计算剩余物品
cout<<"余下的物品书:"<<goods_remain<<endl; return 0;
}

C++程序设计练习(一)的更多相关文章

  1. HTML5 程序设计 - 使用HTML5 Canvas API

    请你跟着本篇示例代码实现每个示例,30分钟后,你会高喊:“HTML5 Canvas?!在哥面前,那都不是事儿!” 呵呵.不要被滚动条吓到,很多都是代码和图片.我没有分开写,不过上面给大家提供了目录,方 ...

  2. 解析大型.NET ERP系统 单据标准(新增,修改,删除,复制,打印)功能程序设计

    ERP系统的单据具备标准的功能,这里的单据可翻译为Bill,Document,Entry,具备相似的工具条操作界面.通过设计可复用的基类,子类只需要继承基类窗体即可完成单据功能的程序设计.先看标准的销 ...

  3. java基础学习03(java基础程序设计)

    java基础程序设计 一.完成的目标 1. 掌握java中的数据类型划分 2. 8种基本数据类型的使用及数据类型转换 3. 位运算.运算符.表达式 4. 判断.循环语句的使用 5. break和con ...

  4. CWMP开源代码研究5——CWMP程序设计思想

    声明:本文涉及的开源程序代码学习和研究,严禁用于商业目的. 如有任何问题,欢迎和我交流.(企鹅号:408797506) 本文介绍自己用过的ACS,其中包括开源版(提供下载包)和商业版(仅提供安装包下载 ...

  5. 《JavaScript高级程序设计(第3版)》笔记-序

    很少看书,不喜欢看书,主要是上学时总坐不住,没有多大定性,一本书可以两天看完,随便翻翻,也可以丢在角落里几个月不去动一下. 上次碰到了<JavaScript高级程序设计(第3版)>感觉真的 ...

  6. 《JavaScript高级程序设计(第3版)》阅读总结记录第一章之JavaScript简介

    前言: 为什么会想到把<JavaScript 高级程序设计(第 3 版)>总结记录呢,之前写过一篇博客,研究的轮播效果,后来又去看了<JavaScript 高级程序设计(第3版)&g ...

  7. 【实战Java高并发程序设计 7】让线程之间互相帮助--SynchronousQueue的实现

    [实战Java高并发程序设计 1]Java中的指针:Unsafe类 [实战Java高并发程序设计 2]无锁的对象引用:AtomicReference [实战Java高并发程序设计 3]带有时间戳的对象 ...

  8. 【实战Java高并发程序设计6】挑战无锁算法:无锁的Vector实现

    [实战Java高并发程序设计 1]Java中的指针:Unsafe类 [实战Java高并发程序设计 2]无锁的对象引用:AtomicReference [实战Java高并发程序设计 3]带有时间戳的对象 ...

  9. 【实战Java高并发程序设计 5】让普通变量也享受原子操作

    [实战Java高并发程序设计 1]Java中的指针:Unsafe类 [实战Java高并发程序设计 2]无锁的对象引用:AtomicReference [实战Java高并发程序设计 3]带有时间戳的对象 ...

  10. 【实战Java高并发程序设计 4】数组也能无锁:AtomicIntegerArray

    除了提供基本数据类型外,JDK还为我们准备了数组等复合结构.当前可用的原子数组有:AtomicIntegerArray.AtomicLongArray和AtomicReferenceArray,分别表 ...

随机推荐

  1. 自己动手开发更好用的markdown编辑器-07(扩展语法)

    这里文章都是从个人的github博客直接复制过来的,排版可能有点乱. 原始地址 http://benq.im/2015/05/19/hexomd-07/   文章目录 1. 准备工作 2. 目录语法 ...

  2. C++语言基础(11)-多态

    一.产生背景 先看下面的例子: #include <iostream> using namespace std; //基类People class People{ public: Peop ...

  3. mysql workbench 导出表结构

    Server->Data Export 选择数据库(我的是 lhc库) -> 选择对应表(我的是  device表), Dump Structre and Data 导出表数据和表结构 D ...

  4. python3输出指定log信息

    问题背景: win10 python xxx.py > c:test.txt 上面这句只能把信息输出到test.txt,但是控制台看不到信息 ########################## ...

  5. linux清空文件夹命令问题

    1.linux删除命令是rm.2.命令为rm -rf /文件夹/文件名.3.例如:rm -f /a/b/d.log.删除在a文件夹中的b文件夹中的d.log这个文件.rm -rf /a/b.删除a文件 ...

  6. java的大端小端和c#如何对应

    当前的存储器,多以byte为访问的最小单元,当一个逻辑上的地址必须分割为物理上的若干单元时就存在了先放谁后放谁的问题,于是端(endian)的问题应运而生了,对于不同的存储方法,就有大端(big-en ...

  7. Mysql 变量讲解

    set语句的学习: 使用select定义用户变量的实践将如下语句改成select的形式: set @VAR=(select sum(amount) from penalties);我的修改: sele ...

  8. plsql programming 20 管理PL/SQL代码(个人感觉用不到)

    这一章的内容, 只完成了一部分, 剩下的用到再补充吧 由于依赖关系, 而编译失败, 需要重新编译. ( 所谓依赖, 是指存储过程, 函数等在运行中调用的对象, 比如table 等, 比如你删除了过程中 ...

  9. 大量数据导入导致mysql自动重启

    昨天晚上第十款做数据库迁移,数据库版本:Version: '5.1.61',数据量27G左右 message报错信息如下: Mar :: VM_163_210_tlinux kernel: [, oo ...

  10. SSH总结(一)

    其实学习struts等框架,不仅要知道怎么用,我们还应该多去看看框架的源码,知道为什么可以这样使用,凡事都知道为什么,以这样的态度学习,我们才能更加深一步的理解原理好实现方式,本类博客主要是个人学习总 ...