C++/C/C# 输入信息可控循环案例 第三种方式亟待完善

第一种方式:

#include <stdio.h>

int main()
{
    int i,sum,j;
    do{       //无条件执行一次循环
        printf("请输入一个整数,输入-1推出循环:\n");
        scanf("%d",&i);
        if(i!=-1)  //判定条件
        {
            printf("i=%d\n",i);
            sum=0;
            j=1;
            for(;j<=i;j++)
                sum+=j;
            printf("sum=%d\n",sum);
        }
        else printf("quit\n");  //不符合判定条件,提示
    }while(i!=-1);  //不符合判定条件,推出
    return 0;
}

第二种方式:

#include <stdio.h>

int main()
{
    int i,sum,j;
    while(1)  //条件恒为TRUE,死循环 如果将“while(1)”改为“for(;;)”也能实现此功能
    {
        printf("请输入一个整数,若输入-1,则退出循环:\n");
        scanf("%d",&i);
        if(i!=-1)  //根据输入i值,确定是否跳出循环
        {
            printf("i=%d\n",i);
            sum=0;
            j=1;
            for(;j<=i;j++)
                sum+=j;
            printf("sum=%d\n",sum);
        }
        else break;   //跳出循环
    }
    printf("quit\n");
    return 0;
}

 第三种方式

#include<iostream>
using namespace std;

int main()
{
    int quit ,grade=750;
    cout<<"输入考生成绩,输入-1退出"<<endl;
    while(grade!=-1)
    {
        cin>>grade;
        while((grade>750)||(grade<0))
        {
            cerr<<"你所输入的成绩是错误的,请重新输入,如果你想退出,请输入“y”";
            cin>>grade;
            if(grade==-1) break;
        }
        else if(grade>=690)
            cout<<"清华,北大\n";
        else if(grade>=670)
            cout<<"复旦,浙大,南大,中科大\n";
        else if(grade>=650)
            cout<<"华科大,同济,南开";
        else if(grade>=640)
            cout<<"哈工大,国防科大,电子科技";
        else if(grade>=600)
            cout<<"哈工程,";
        else if(grade>=550)
            cout<<"林大,哈医大,宁波诺丁汉";
        else if(grade>=540)
            cout<<"西交利物浦,浙江工业大学";
        else if(grade>=520)
            cout<<"农大";
        else cout<<"没考虑";

    }
    return 0;
}

 

posted @ 2019-05-06 15:50  大老菜  阅读(332)  评论(0编辑  收藏  举报