#includeusingnamespacestd;intmain(){intn;cin>>n;if(n>9&&n<100)cout<<"YES";elsecout<<"NO";return0;}17.MT1117两个负数(1)题目描述判断x、y、z中是否有两个负数。
#includeusingnamespacestd;intmain(){intx,y,z,num=0;cin>>x>>y>>z;if(x<0)++num;if(y<0)++num;if(z<0)++num;if(num==2)cout<<"YES";elsecout<<"NO";return0;}18.MT1118等差数列(1)题目描述判断a、b、c是否为一个等差数列中的连续三项。
#includeusingnamespacestd;intmain(){inta,b,c;cin>>a>>b>>c;if(b-a==c-b)cout<<"YES";elsecout<<"NO";return0;}19.MT1119大小写的转换(1)题目描述请编写一个简单程序,实现输入字符大小写的转换。其他非法输入(非字母的输入)则原样输出。
#includeusingnamespacestd;intmain(){charch;cin>>ch;if(ch>='A'&&ch<='Z')ch+=32;elseif(ch>='a'&&ch<='z')ch-=32;elsech=ch;cout<#includeusingnamespacestd;intmain(){charch;cin>>ch;if(ch=='A')cout<<"Excellent";elseif(ch=='B')cout<<"Welldone";elseif(ch=='C')cout<<"Youpassed";elseif(ch=='D')cout<<"Betterlucknexttime";elsecout<<"Invalidgrade";return0;}21.MT1121小码哥考完咯(1)题目描述小码哥考完咯,你是她的老师,请使用switch语句编写一个程序,输出她的分数对应的成绩等级ABCDF。使用以下分级标准:A=90-100,B=80-89,C=70-79,D=60-69,F=O-59。不考虑负数或者其他特殊情况。本题要求使用switch语句。
#includeusingnamespacestd;intmain(){intn;cin>>n;n/=10;switch(n){case10:cout<<'A'<(1)题目描述
小码哥考完咯,你是她的老师,请编写一个程序,输出她的分数对应的成绩等级ABCDF。使用以下分级标准:A=90-100,B=80-89,C=70-79,D=60-69,F=0-59不考虑负数或者其他特殊情况。本题要求使用阶梯IF-ELSE语句,不得使用switch。
#includeusingnamespacestd;intmain(){intn;cin>>n;n/=10;switch(n){case10:cout<<'A'<#includeusingnamespacestd;intmain(){charch;cin>>ch;vectora{'A','a','O','o','E','e','I','i','U','u'};vector::iteratoriter=find(a.begin(),a.end(),ch);if(iter==a.end())cout<<'N';elsecout<<'Y';return0;}24.MT1124罗马数字(1)题目描述编一个程序,输入一个整数(1~9),输出对应大写罗马数字。不考虑非法的不合理的输入等特殊情况。
#includeusingnamespacestd;intmain(){intn;cin>>n;stringc[100]={"0","I","II","III","IV","V","VI","VII","VIII","IX","X"};cout<#includeusingnamespacestd;intmain(){strings;cin>>s;if(s=="january")cout<<1;elseif(s=="february")cout<<2;elseif(s=="march")cout<<3;elseif(s=="april")cout<<4;elseif(s=="may")cout<<5;elseif(s=="june")cout<<6;elseif(s=="july")cout<<7;elseif(s=="august")cout<<8;elseif(s=="september")cout<<9;elseif(s=="october")cout<<10;elseif(s=="november")cout<<11;elseif(s=="december")cout<<12;return0;}26.MT1126十二生肖(1)题目描述编一个程序,输入一个整数(1~12),输出对应十二生肖,鼠、牛、虎、兔、龙、蛇、马、羊、猴、鸡、狗、猪的拼音(小写)。不考虑非法的不合理的输入等特殊情况。
#includeusingnamespacestd;intmain(){intn;cin>>n;stringc[100]={"shu","niu","hu","tu","long","she","ma","yang","hou","ji","gou","zhu"};cout<#includeusingnamespacestd;intmain(){intn;cin>>n;n=n-1900;n%=12;stringc[100]={"rat","ox","tiger","rabbit","dragon","snake","horse","sheep","monkey","rooster","dog","pig"};cout<#includeusingnamespacestd;intmain(){intx;cin>>x;switch(x){case1:cout<<'6';break;case6:cout<<'1';break;case2:cout<<'5';break;case5:cout<<'2';break;case3:cout<<'4';break;case4:cout<<'3';break;default:cout<<"-1";break;}return0;}29.MT1129小码哥玩骰子(1)题目描述小码哥抛出一个六面骰子。每个面上都印有一个数字,数字在1到6之间。输入正面的数字,请猜测对面的数字并输出两数之和。
#includeusingnamespacestd;intmain(){intx;cin>>x;switch(x){case1:cout<<'7';break;case6:cout<<'7';break;case2:cout<<'7';break;case5:cout<<'7';break;case3:cout<<'7';break;case4:cout<<'7';break;default:cout<<"-1";break;}return0;}30.MT1130骰子里的数学(1)题目描述小码哥抛出一个六面骰子。每个面上都印有一个数字,数字在1到6之间。输入正面的数字,请猜测对面的数字并输出两数之差。
#includeusingnamespacestd;intmain(){intx;cin>>x;switch(x){case1:cout<<"-5";break;case6:cout<<'5';break;case2:cout<<"-3";break;case5:cout<<'3';break;case3:cout<<"-1";break;case4:cout<<"1";break;default:cout<<"-1";break;}return0;}31.MT1131字符判断(1)题目描述输入一个字符,判断是数字字符、大写字母、小写字母、算术运算符、关系运算符、逻辑运算符,还是其他字符,分别输出“Number”,"Capitalletter”,"Lowercaseletter",“Arithmeticoperators”,“Relationaloperators”,"Logicaloperators”,"Othercharacter"。
备注
#includeusingnamespacestd;intmain(){charch;inta;cin>>ch;a=(int)ch;if(a>=48&&a<=57)cout<<"Number"<='A'&&ch<='Z')cout<<"Capitalletter"<='a'&&ch<='z')cout<<"Lowercaseletter"<'||ch=='<')cout<<"Relationaloperators"<#includeusingnamespacestd;intmain(){intn,m,t;stringc[100]={"零","壹","贰","叁","肆","伍","陆","柒","捌","玖","拾"};cin>>n;if(n/10!=0)cout<#includeusingnamespacestd;intmain(){intn;doubleres;cin>>n;if(n<=5)res=10.00;elseif(n>5&&n<=10)res=10.0+2*(n-5);elseif(n>10)res=20+2.5*(n-10);printf("%.2lf",res);return0;}34.MT1134简单计算(1)题目描述编写一个模拟简单计算器的程序,计算表达式:aopb的值,要求a、op、b从盘输入。其中a、b(作除数时不能为O)为数值,op为运算符+、-、*、/。本题不考虑非法输入等特殊情况。
#includeusingnamespacestd;intmain(){inta,b,c;cin>>a>>b>>c;intans=a*60*60+b*60+c;cin>>a>>b>>c;ans+=a*60*60+b*60+c;cout<#includeusingnamespacestd;intmain(){inty;cin>>y;if((y%4==0)&&(y%100!=0)||(y%400==0))cout<<"Y";elsecout<<"N";return0;}38.MT1138第几天(1)题目描述输入日期(YYYY-M-D),然后输出它是一年中的第几天。不考虑负数或者其他特殊情况。
#includeusingnamespacestd;intmain(){intdp[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};intm,y,d,ans;scanf("%d-%d-%d",&y,&m,&d);if((y%100!=0&&y%4==0)||y%400==0)dp[2]++;for(inti=1;i#includeusingnamespacestd;intmain(){intN;cin>>N;if(N%11==0||N%13==0)cout<<"YES";elsecout<<"NO";return0;}40.MT1140数字7(1)题目描述输入一个整数N,判断它是不是整数7的和、差之类的。(比如某数等于7+7,或者7-7,或者7-7-7+7+7...)是则输出YES否则或者NO。
#includeusingnamespacestd;intmain(){intn;cin>>n;if(n%7==0)cout<<"YES";elsecout<<"NO";return0;}小结(三)典型范例:
容器方法:MT1123String方法:MT1124
(1)题目描述给您一个整数输入N,如果它是整数13的和或差(13+13,13-13,13-13-13+13+13...),输出YES,否则输出NO。
#includeusingnamespacestd;intmain(){intn;cin>>n;if(n%13==0)cout<<"YES";elsecout<<"NO";return0;}42.MT1142整除的总数(1)题目描述输入正整数N和M,其中N<=M。求区间[N,M]中可被K整除的总数。
#includeusingnamespacestd;intmain(){intn,m,k,num;cin>>n>>m>>k;for(inti=n;i<=m;i++){if(i%k==0)++num;}cout<#includeusingnamespacestd;intmain(){intn,sum=0;cin>>n;for(inti=n;i>0;i/=10)sum+=i%10;if(n%sum==0)cout<<"YES";elsecout<<"NO";return0;}44.MT1144整除(1)题目描述输入正整数N,检查它是否可以被其数字之和整除,输出YES或者NO。不考虑不合理的输入等特殊情况。
#includeusingnamespacestd;intmain(){intn,sum=0;cin>>n;for(inti=n;i>0;i/=10)sum+=i%10;if(n%sum==0)cout<<"YES";elsecout<<"NO";return0;}45.MT1145全部整除(1)题目描述输入正整数N,找到一个最小的整数K,可以被1到N的每个数整除。
#includeusingnamespacestd;intmain(){intn,i,j,sum;cin>>n;for(i=1;;i++){sum=0;for(j=1;j<=n;j++){if(i%j==0)sum++;}if(sum==n)break;}cout<三人同行七十稀,五树梅花廿一支,七子团圆正半月,除百零五使得知。
3人同行“70”稀,3的余数乘以70,5树梅花“21”支,5的余数乘以21,7子团圆正半月(15天),7的余数乘以15。最后加在一起除以105看余数。
#includeusingnamespacestd;intmain(){printf("23");return0;}47.MT1147古人的剩余定理(1)题目描述今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物最少几何
#includeusingnamespacestd;intmain(){printf("23");return0;}48.MT1148隐晦余8(1)题目描述存在一个数x(大于10),除以3余2,除以5余3,除以7余1,求这个数最小值。
#includeusingnamespacestd;intmain(){printf("113");return0;}49.MT1149余数(1)题目描述存在一个数x(大于10),除以7余2,除以11余4,除以13余5,求这个数最小值。
#includeusingnamespacestd;intmain(){printf("499");return0;}50.MT1150战死四五百(1)题目描述带1500名兵士打仗,战死四五百人,站3人一排,多出2人;站5人一排,多出4人;站7人一排,多出6人。问战死多少人。