C++,小甲鱼课堂代码笔记

03 从一个小程序说起
使用"cin>>"判定,是否为非法输入
while(cin>>i)
当输入的数据不为整型时,判断为false,退出循环。***************************************************************************************************

#include <iostream>
using namespace std;
int main()
{
    int i;
    char ch;
    int sum = 0;
    while(cin>>i)//12 2 3 4 5
    {
        sum += i;
        while(cin.peek()==' ') //屏蔽空格
        {
            cin.get();
        }
        if(cin.peek() == '\n')
        {
            break;
        }

    }
    cout<<"sum = "<<sum<<endl;
    return 0;
}

cin.ignore(7)
作用:忽视前7个字符

#include <iostream>
using namespace std;
int main()
{
    char buf[20];

    cin.ignore(7);

    cin>>buf;
    cout<<"buf="<<buf<<endl;

    return 0;
}

cin.gcount(),cin.write()与cin.read()的使用

#include <iostream>
using namespace std;
int main()
{
    char p[20];
    cout<<"请输入文本:"<<endl;
    cin.read(p,20);
    cout<<"输出文本的个数"<<cin.gcount()<<endl;
    cout<<"输出文本:"<<endl;
    cout.write(p,20);
    return 0;
}

cin.write(5)//每次输出,占5个字符
cin.read(5)//每次接收,均接受5个字符

#include <iostream>
using namespace std;
int main()
{
    int w = 4;
    char str[20];
    cout<<"请输入一段文本"<<endl;
    cin.width(5);
    while( cin >> str)
    {
        cout.width(10);
        cout << str <<endl;
        cin.width(5);
    }
    return 0;
}

05 从另一个程序说起
输出输入小结:
在应用程序结束的地方为了应用不是一闪而过,加入get()一个字符来退出程序。

#include <iostream>
int main()
{
    std::cout<<"请问是否关机?【Y/N】"<<"\n";

    char anwser;
    std::cin >> anwser;
    switch(anwser)
    {
        case 'Y':
        case 'y':
            std::cout<<"即将关机"<<"\n";
            break;
        case 'N':
        case 'n':
            std::cout<<"返回主界面"<<"\n";
            break;
    }
    std::cin.ignore(100,'\n');
    std::cin.get();
    return 0;
}

07复杂的数据类型
定义一个数组容纳10个整数,这些整数来自用户输入。我们将计算这些值的累加和和平均值并输出。

#include <iostream>
#define LEN 3
int main()
{l
    int arr[LEN];
    int i = 0,sum=0;
    std::cout<<"请输入"<<LEN<<"个整型数据:\n"<<std::endl;
    for(i = 0;i<LEN;i++)
    {
        std::cout<<"请输入第 "<<i+1<<"个数据:";
        while(!(std::cin>>arr[i])) //非法拦截
        {
            std::cin.clear();
            std::cin.ignore(100,'\n');
            std::cout<<"输入错误,请输入第 "<<i+1<<"个数据:";
        }
        sum += arr[i];
    }

    float aver = sum/(float)LEN;
    std::cout<<"累加和为:"<<sum<<std::endl;
    std::cout<<"average = " <<aver <<std::endl;

    return 0;
}

08 复杂的数据类型–指针

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值