首页/文章/ 详情

C++基础知识(三)

1月前浏览222
   

转义字符

       

转义字符是一类特殊的提醒字符,用于实现输出一些特殊的内容,如我们要将输出的内容进行对齐,但是需要对齐的内容前面已经有其他的内容了,这时候就需要进行移动制表符,C++使用“\”表示转义字符的开始,即反斜杠后面的内容就是要输出的特殊字符,移动制表符的程序是“\t”




















# include<iostream>#include<string>
using namespace std;
int main(){
 string name = "Audrey Hepburn";  int age = 18;  string country = "Belgium";    cout << "Her name is:\t" << name << endl;  cout<< "Her age is:\t" << age << endl;  cout << "She comes from:\t"<<country<< endl;
 system("pause");  return 0;  }
 

输出内容为




Her name is:    Audrey HepburnHer age is:     18She comes from: Belgium
 

程序的10、11和12行中,每个输出的字符串后面都包含了“\t”,发现程序的输出已经进行了对齐,这在输入输出中会显得美观。

C++有很多的转义字符,假如我们需要进行警示提示,还可以让电脑提示警报声























# include<iostream>#include<string>
using namespace std;
int main(){  int age = 0;
 cout << "Please input your age:\t" << endl;  cin >> age;
 if (age < 0){    cout << "The age is nagtive!\a" << endl;;  }  else  {    cout << "your age is:\t" << age << endl;  }
 system("pause");  return 0;}
 

程序会提示输入人的年龄,当输入的数值小于零的时候,程序会输出年龄是负数的字样,然后电脑发出警报声,下面是输出的结果




Please input your age:-10The age is nagtive!
 

C++其他转义字符的具体用法可以查询具体的资料,下面是C++的去全部转义字符

   

布尔类型

     

有些数据具有二值性,如人的性别、明天上午有没有早八课等等,C++采用布尔类型数据表示,采用1表示true,0表示false





















# include<iostream>#include<string>
using namespace std;
int main(){  bool judge = 0;  cout << "明天上午有没有早八课\?" << endl;  cin >> judge;
 if (judge == true){    cout << "明天上午要上早八。" << endl;  }  else{    cout << "明天上午可以睡懒觉。" << endl;  }    system("pause");  return 0;}
 

上面程序提醒输入,如输入1,就表示有早八课,如




明天上午有没有早八课?1明天上午要上早八。
 

如果输入0,那就是没有课,如




明天上午有没有早八课?0明天上午可以睡懒觉。
 

与屏幕交互

       

可以发现上面的程序多次出现“cin”,cin对应于cout,cout用于向屏幕输出内容,cin用于从屏幕获取内容,包括数值数据、字符串数据等等


































#include<iostream>#include<string>
using namespace std;
int main(){
 int age =0;  string name = "";  bool gender = 0;
 cout << "Please input your name:\t";  cin >> name;
 cout << "Please input your age:\t";  cin >> age;
 cout << "Please input gender(1 means male and 0 means female):\t";  cin >> gender;

 cout << "Your name is:\t" << name<<endl;  cout << "Your age is:\t" << age<<endl;  if (gender == 1){    cout << "Your gender is:" << "male" << endl;      }  else{    cout << "Your gender is:" << "female" << endl;  }
 system("pause");  return 0;}
 

上面的程序展示了cin结合cout与屏幕交互







Please input your name: tudouerPlease input your age:  19Please input gender(1 means male and 0 means female):   1Your name is:   tudouerYour age is:    19Your gender is:male
 

首先用cin获取了姓名、年龄和性别,然后向屏幕输出了这些数据。

上面的程序涉及了判断分支语句,后面会开始介绍控制程序流程的内容,程序的功能会越来越多。

     

来源:有限元先生
SystemUM控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-09-29
最近编辑:1月前
外太空土豆儿
硕士 我们穷极一生,究竟在追寻什么?
获赞 2粉丝 1文章 41课程 0
点赞
收藏
作者推荐

基于paraview的有限元模型可视化

零概述作为最早进入中国市场的商业有限元软件之一,abaqus以其强大的非线性方程组求解能力为广大的业界工程师、科研学者等广泛使用,该软件自带的前后处理功能也为有限元法的广泛使用提供了极大的方便。随着使用者对后处理的定制需求逐渐增多,abaqus自带的后处理功能逐渐不能完全满足,例如,abaqus自带的功能不能对用户自定义单元进行可视化,为了进一步提升有限元计算结果的可视化效果,便于展示计算成果,可以在abaqus计算结果的基础上,借用第三方软件对计算结果进行可视化。paraview是一款开源的图形处理软件,其在标量、矢量和高维张量的可视化方面具有极大的优势,该软件提供了串行和并行数据处理方式,可以采用大型机对百万级别的网格数据进行并行处理,也可采用小型机对数据进行串行处理,满足不同计算速度的需求。帖子探索了采用paraview对abaqus中的有限元计算模型进行可视化,其中包括abaqus内置的单元,以及abaqus无法进行可视化的用户自定义单元。壹二维有限元模型首先以一个椭圆形几何为例。采用任意多边形网格进行离散,其中任意多边形网格为用户自定义单元,而用户自定义单元无法在abaqus中进行可视化。下面是某混凝土重力坝几何图形。采用多边形网格对重力坝进行网格划分,共计多边形单元数目为:5944,共计节点数目为:117592,其中坝体单元数目为:737,坝基单元数目为:5207。共计五种多边形,边数为5~9。单独显示坝体。单独显示坝基。贰三维网格模型以东方明珠塔为例,首先采用六面体和四面体混合网格进行划分,共计单元数目:954029,共计节点数目:198089,其中,六面体单元数目为:228,四面体单元数目为:95380,paraview(左)与abaqus(右)的全局模型可视化对比为:paraview(左)与abaqus(右)的局部模型可视化对比为:然后采用任意多面体网格离散,任意多面体网格在abaqus中无法进行可视化,下面是paraview中的可视化效果:下面采用八叉树体网格离散,八叉树多面体网格同样无法在abaqus中可视化,八叉树网格在paraview中的可视化效果为:任意多面体网格,顾名思义,即为表面数目任意,表面多边形的边数任意,下面展示几个任意多面体单元:(下方数字为多面体单元的面数目)下面展示几个八叉树单元:(下方数字为多面体单元的面数目)下面以一个子弹为例,创建几何模型,并分别采用不同的网格离散。子弹的几何尺寸为:下面是不同单元离散的网格在paraview中的效果图,从左到右,从上到下依次为:四面体单元、六面体单元、任意多面体单元和八叉树单元。下面以实际地形为例。地形为小湾拱坝所在的位置,实地地形如:画网格之前先创建几何模型采用六面体网格对该几何模型进行离散,然后将abaqus(右)的模型处理成paraview(左)可识别的vtk文件,下面是效果图:下面采用任意多面体网格离散,abaqus无法对用户自定义单元进行可视化,因此,在paraview中的可视化效果为叁STL点云数据可视化点云数据是用于3D打印的一种数据格式,该数据采用扫描仪对模型实体表面进行扫描采集表面点云-坐标数据。该数据只记录了模型的表面数据,将模型表面离散为三角形面片数据。帖子以一个孙悟空的模型为例,将stl数据在paraview中显示,该模型表面共计三角形面片:680006个,点个数为:340200个,下面是显示的效果来源:有限元先生

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈