现在的位置: 首页 > 综合 > 正文

第五章 构造数据类型(二)

2013年06月09日 ⁄ 综合 ⁄ 共 2328字 ⁄ 字号 评论关闭
第四题:
#include<iostream>
using namespace std;

int main()
{
    double hTemp[7];
    double lTemp[7];
    for(int i=0;i<7;++i){
        if(i==0)
            cout<<"今天是星期日,请输入今天气温值:"<<endl;
        else
            cout<<"今天是星期"<<i<<",请输入今天的气温值:"<<endl;

        cout<<"最高温度:";
        cin >> hTemp[i];
        cout<<"最低温度:";
        cin >> lTemp[i];
        while (hTemp[i]<lTemp[i]||hTemp[i]<0||lTemp[i]<0){
            cout<<"你输入的气温值有错误,请重输"<<endl;
            cout<<"最高温度:";
            cin >> hTemp[i];
            cout<<"最低温度:";
            cin >> lTemp[i];
        }
    }

    //计算温度
    double avgH=0;
    double avgL=0;
    for(int i=0;i<7;++i){
        avgH+=hTemp[i];
        avgL+=lTemp[i];
    }
    avgH=avgH/7;
    avgL=avgL/7;
    cout<<"本周平均最高气温为"<<avgH<<"度。"<<endl;
    cout<<"本周平均最低气温为"<<avgL<<"度。"<<endl;
    return 0;
}

第五题:
#include<iostream>
using namespace std;

int main()
{
    cout<<"Please input a int Value:"<<endl;
    int iValue;
    cin>>iValue;

    if(iValue<=0){
        cout<<"必须是正数"<<endl;
        return 0;
    }
    //count
    int temp=iValue;
    int iCount=0;
    while(temp){
        temp=temp/10;
        iCount++;
    }
    int *iArr=new int[iCount];
   
    temp=iValue;
    for(int i=0;i<iCount;i++)
    {
        iArr[i]=temp%10;
        temp/=10;
    }

    int i,j;
    for(i=0,j=iCount-1;i<j;++i,--j)
    {
        if(iArr[i]!=iArr[j])
            break;
    }

    if(i>=j)
        cout<<"这是回文数"<<endl;
    else
        cout<<"这不是回文数"<<endl;

    delete []iArr;

    return 0;
}

第七题:
#include<iostream>
#include<cmath>
using namespace std;

struct Root{
    double x1;
    double x2;
    bool brt;
};

Root Func2(double a, double b, double c){
    //判断是否有实根
    if(b*b-4*a*c<0){
        cout<<"本方程没有实根"<<endl;
        Root rt;
        rt.x1=rt.x2=0;
        rt.brt=false;
        return rt;
    }

    Root root;

    double sq=sqrt(b*b-4*a*c);
    root.x1=(-b+sq)/(2*a);
    root.x2=(-b-sq)/(2*a);
    root.brt=true;

    return root;
}

int main()
{
    Root rt=Func2(1,-1,-6);
    if(rt.brt)
        cout<<"x1="<<rt.x1<<"/nx2="<<rt.x2<<endl;

    return 0;
}

第八题:
#include<iostream>
#include<cstring>
using namespace std;

int main()
{
    cout<<"请输入一个字符串"<<endl;
    char str[50];
    cin>>str;

    int iCap=0;
    int iSmall=0;
    int num=0;
    for(int i=0;str[i]!='/0';++i){
        if(str[i]>='A'&&str[i]<='Z')
            ++iCap;
        if(str[i]>='0'&&str[i]<='9')
            ++num;
        if(str[i]>='a'&&str[i]<='z')
            ++iSmall;
    }

    cout<<"本字符串有大写字母"<<iCap<<"个"<<endl;
    cout<<"本字符串有小写字母"<<iSmall<<"个"<<endl;
    cout<<"本字符串有数字"<<num<<"个"<<endl;

    return 0;
}

抱歉!评论已关闭.