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; }