北邮C++实验二作业.docx
- 文档编号:24856777
- 上传时间:2023-06-02
- 格式:DOCX
- 页数:20
- 大小:266.87KB
北邮C++实验二作业.docx
《北邮C++实验二作业.docx》由会员分享,可在线阅读,更多相关《北邮C++实验二作业.docx(20页珍藏版)》请在冰豆网上搜索。
北邮C++实验二作业
3.3实验题
一、基础题
1.修改下列程序中的语法错误。
#include
usingnamespacestd;
voidmain()
{intchoice=0;
do{
cout<<"请选择下面功能菜单"< cout<<"1.调用浏览学生信息模块.\n"; cout<<"2.调用查询学生信息模块.\n"; cout<<"3.调用增加学生信息模块.\n"; cout<<"4.调用修改学生信息模块.\n"; cout<<"请输入数字(1~4): \n"; cin>>choice; if(choice<1||choice>4) {cout<<"输入错误! 重新输入: "; continue; } switch(choice) {case1: cout<<"执行浏览学生信息程序"; break; case2: cout<<"执行查询学生信息程序"; break; case3: cout<<"执行增加学生信息程序"; break; case4: cout<<"执行修改学生信息程序"; break; } }while(choice<0); cout< cout<<"程序结束! "< system("pause"); } 2.在下列程序中填上适当的语句,打印200以内所有的质数,并对有注释标记的语句进行功能注释。 #include #include usingnamespacestd; voidmain() { intj,flage; doublei,k; for(i=2;i<=200;i++) { flage=1; k=sqrt(i);//对i做开平方处理 for(j=2;j<=k;j++) { if((int)i%j==0)//判断i是否有因数 {flage=0; break;} } if(flage)//关于i是否为素数的开关(若i是素数,则flage=1;若i不是素数,则flage=0) cout< } system("pause"); } 3.修改下列程序,并输出结果,输出示例见图3-1。 要求: 对循环体进行注释。 #include usingnamespacestd; voidmain() { inti,j; j=20; for(i=0;i<=5;i++)//对i进行for循环 {cout<<"i="< j=i+j*3;}//对j进行赋值运算 cout<<"i="< cout<<"j="< system("pause"); } 4.修改下列程序,输出结果如图3-2。 并对有注释标记的语句进行功能注释。 #include usingnamespacestd; voidmain() { inti,j; for(i=1;i<=9;i++)//对第一个变量i进行循环 {for(j=1;j<=i;j++)//对第二个变量j进行循环 cout< cout< system("pause"); } 5.在下列程序中填上适当的语句,完成统计售货员一天的销售额和接待顾客的人数,并对有注释标记的语句进行功能注释。 输出示例见图3-3。 #include usingnamespacestd; voidmain() { charx; floatsum=0,sum1,m,p=0; cout<<"请输入营业员的密码: "; cin>>x; if(x=='1'||x=='2'||x=='3'||x=='4'||x=='5')//营业员的密码为1或2或3或4或5 {do//对每次收费进行循环 {sum1=0; cout<<"请分别输入用户购买商品的价格"< for(inti=1;i<=10000;i++)//对商品个数进行循环 {cout<<"第"< "; cin>>m;//输入商品价格 if(m==1111||m==0)//如果m=1111或0就停止 break; sum1=sum1+m;//计算总的营业额 } cout< cout<<"请付款为"< cout< p++;//对销售的商品数量进行计数 sum=sum+sum1; }while(m);} else cout<<"请退出收银台,谢谢! "; cout<<"今天商店的营业额为: "< cout<<"今天接待消费客人共: "< system("pause"); } 二、编程题 1.设计一个程序,验证进入程序密码的正确性。 仿真让用户输入六位数字的密码,且提供三次输入机会,输入正确则显示欢迎使用财会报表程序,否则则显示密码错,重新输入! ,连续输入三次错误后,则显示拒绝使用财会报表软件并结束程序。 #include usingnamespacestd; voidmain() { cout<<"请输入六位数字程序密码: "; floata=123456; floatb; cin>>b; if(b==a) cout<<"欢迎使用财会报表程序! "< else {cout<<"密码错,重新输入! "< cin>>b; if(b==a) cout<<"欢迎使用财会报表程序! "< else {cout<<"密码错,重新输入! "< cin>>b; if(b==a) cout<<"欢迎使用财会报表程序! "< else cout<<"连续三次输入错误,拒绝使用财会报表软件并结束程序! "< system("pause"); } 2.设计一个程序,求出100到999以内的所有“水仙花数”。 “水仙花数”是指一个三位数,其各位数字的立方和恰好等于该数本身。 例如370=3*3*3+7*7*7+0,在999以内共有4个水仙花数。 #include usingnamespacestd; voidmain() { inti,a,b,c; for(i=100;i<1000;i++) {a=(i/100)*(i/100)*(i/100); b=((i/10)%10)*((i/10)%10)*((i/10)%10); c=(i%10)*(i%10)*(i%10); if(a+b+c==i) cout< system("pause"); } 3.设计一个程序,输入年、月,打印出该年该月的天数。 提示: 每年的1月、3月、5月、7月、8月、10月、12月份是31天,4月、6月、9月、11月份是30天;闰年判断方法: 如果年号能被400整除,则是闰年;如果年号能被4整除,而不能被100整除,则是闰年,闰年的2月份为29天,平年为28天。 #include usingnamespacestd; intleapyear(inta); voidmain() { intyear,month; cout<<"请输入年份: "; cin>>year; cout<<"请输入月份: "; cin>>month; if(leapyear(year)) switch(month) { case1: cout< break; case2: cout< break; case3: cout< break; case4: cout< break; case5: cout< break; case6: cout< case7: cout< break; case8: cout< break; case9: cout< break; case10: cout< break; case11: cout< break; case12: cout< break; default: cout<<"输入错误,请重新输入! "; } else switch(month) { case1: cout< break; case2: cout< break; case3: cout< break; case4: cout< break; case5: cout< break; case6: cout< case7: cout< break; case8: cout< break; case9: cout< break; case10: cout< break; case11: cout< break; case12: cout< break; default: cout<<"输入错误,请重新输入! "; } system("pause"); } intleapyear(intyear) { if(year%100==0) {if(year%400==0) return1; else return0;} else if(year%4==0) return1; else return0; } 4.设计一个程序,打印下列5阶的实心菱形。 提高题: 打印出n阶的实心菱形。 * *** ***** ******* ********* ******* ***** *** * #include #include usingnamespacestd; voidmain() { inti=1,j,n; cout<<"请输入一个正整数n: "; cin>>n; while(i<=n) { for(j=1;j<=((n-i)/2);j++) cout<<""; for(j=1;j<=i;j++) cout<<"*"; for(j=1;j<=((n-i)/2);j++) cout<<""; cout< i=i+2; } i=i-2; while(i>0) { for(j=1;j<=((n-i)/2);j++) cout<<""; for(j=1;j<=i;j++) cout<<"*"; for(j=1;j<=((n-i)/2);j++) cout<<""; cout< i=i-2; } system("pause"); } 5.设计一程序,输入一串字符,分别统计出其中英文字母、空格、数字和其他字符的个数并打印统计结果。 #include usingnamespacestd; voidmain() { intletter=0,number=0,sign=0,space=0; intk=0; constintn=1000; charbuffer[n]; cout<<"请输入一行字符: "< cin.getline(buffer,n,'\n'); while(buffer[k]! ='\0') { if(((int)buffer[k]>=65&&(int)buffer[k]<=90)||((int)buffer[k]>=97&&(int)buffer[k]<=122)) letter++; if((int)buffer[k]>=48&&(int)buffer[k]<=57) number++; if(((int)buffer[k]>=33&&(int)buffer[k]<=47)||((int)buffer[k]>=58&&(int)buffer[k]<=64)||((int)buffer[k]>=91&&(int)buffer[k]<=96)||((int)buffer[k]>=123&&(int)buffer[k]<=126)) sign++; if((int)buffer[k]==32) space++; k++; } cout<<"字母的个数是: "< cout<<"数字的个数是: "< cout<<"字符的个数是: "< cout<<"空格的个数是: "< system("pause"); } 6.编写一个程序,统计文本文件中的字符数。 #include usingnamespacestd; voidmain() { intx=0,k=0; constintn=10000; charfilename[n]; cout<<"请输入文件名: "; cin>>filename; while((int)filename[k]! =27) { x++; k++; }; cout<<"字符的个数是: "< system("pause"); }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 北邮 C+ 实验 作业