c++控制输入输出及cctype使用

1.赋值操作

#include<iostream>
using namespace std;
int main() {
	int a, b, c, d;
	a = 1;
	d = c = b = a;//赋值表达式
	cout << a << b << c << d;
	return 0;
}

相当于a赋给b,b赋给c,最后c赋给d。

2.标准输入输出的控制符

#include<iostream>

#include<iomanip>
using namespace std;
int main() {
	//输出(固定)位数,(固定)小数位数,科学计数
	double a = 123.45678987;
	cout << a << endl;
	cout << endl;
	//cout.setprecision(6);//效果一样
	cout << setprecision(7) << a << endl;//输出的位数
	cout << setprecision(6)<< a << endl;//回复默认精度6
	cout << setiosflags(ios::fixed) << a << endl;//以固定小数位输出,默认为6
	cout << fixed << a << endl;
	cout << setiosflags(ios::fixed) << setprecision(8) << a << endl;//以指定小数位输出
	cout << setiosflags(ios::scientific) << a << endl;//以指数形式输出,默认6位小数,(第7位四舍五入)
	cout << scientific << a << endl;
	cout << setiosflags(ios::scientific) << setprecision(4) << a << endl;
	cout << endl;
	
	//boolpha只对bool类型生效
	bool v; int v = 0; double v_ = 1.2;
	cin >> boolalpha >> v;// v=true,v=0;
	cout << v << boolalpha << v << noboolalpha << v << endl;
	cout << v << boolalpha << v << noboolalpha << v << endl;
	cout << v_ << boolalpha << v_ << noboolalpha << v_ << endl;
	
	//整数输出样例//
	//改变进制输入输出,且语句中对进制的改变是***永久的***(全局有效),并不是单句有效,所以在完成特定进制转换要求后要改回去
	int b = 123456;//1e240
	cin >> hex >> b;//16进制输入但是是以10进制int存储的
	cout << b << endl;

	cout << hex << b << endl;//以16进制输出b;
	cout << setiosflags(ios::uppercase) << b << endl;//e大写
	cout << uppercase << b << endl;//e大写
	cout << dec << b << endl;//恢复10进制

	cout << setw(8) << b << endl;//_ _ 123456 设置字段宽度,本次有效,默认在左边填充(可实现右对齐的功能)
	cout << left<<setw(8) << b <<'1'<< endl;//123456_1 设置字段宽度,且设定后对第一个变量有效,默认在左边填充(可实现右对齐的功能)
	cout.width(6);//设置输出宽度  返回值:当前输出宽度
	cout <<right<< b << endl;
	cout << setfill('*') << setw(10) << b << endl;//用*填充空格
	cout << endl;
	return 0;
}

在这里插入图片描述

#include<iostream>s
#include<iomanip>
using namespace std;

int main() {
	//show_  全局有效
	//showbase  noshowbase
	//showpos   noshowpos//10进制显示+号
	//showbase  noshowbase
	//showpoint noshowpoint
	int a = 70;
	cout << a << endl;
	cout << showbase << hex << a<<endl;//显示进制 16-符号OX
	cout  << oct <<a<< endl;//0106 8-补0
	cout << dec << a << endl;//70  10-

	cout << setiosflags(ios::showpos) << a;//正数前加+
	cout << endl;

	return 0;
}

在这里插入图片描述
3.getchar,putchar
putchar(‘a’),putchar(‘\n’),putchar(66),->ascii码
4.putchar(getchar()+32);putchar(‘\n’);读入A,输出a
5.putchar<<getchar//输出的是ascii码

4.判断是否为数字或字母
isdigit() isalpha()
isupper判断是否大写
islower判断是否小写

#include <iostream>
#include <cctype>
using namespace std;
int main(){
    char a;
    cin>>a;
    if(isdigit(a)){
        cout<<a<<" is a digit"<<endl;
    }else{
        cout<<a<<" is not a digit"<<endl;
    }


    return 0;
}

在这里插入图片描述
这里推荐小古银的视频,讲解的十分详细
https://www.bilibili.com/video/BV1bW411o7j7?p=30

在这里插入图片描述此外
在这里插入图片描述在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值