我的C++第四周作业2(第三章作业2-10)
2014-03-31 01:16
756 查看
作业要求.
1完成课本每一个编程题。要求先画出流程算法图或N-S图,然后编程实现,有可能的话使用两种以上方法;
2.编程求“百钱百鸡”问题。(鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?)
3.编程输入一个整数,计算它是几位数字,分别输出每一位数字,并输出各个数位上数字之和。
4.在一个平面上,有四个圆柱形塔,塔底圆心坐标分别为(2,2)、(-2,2)、(-2,-2)、(2,-2),塔半径为1,塔高为10米,塔外无建筑物。编程,输入任一个点平面坐标,求该点建筑物的高度。
5.编程计算s=1!+2!+3!+......n!(其中n为整数,n!表示计算n阶乘),要求使用两种以上的方法。
6.猴子吃苹果问题:猴子第一天摘了若干个苹果,当时吃了一半,还不过隐,又多吃了一个。第二天,又吃掉余下的一半,又多吃一个。以后每一天,都是吃掉前一天余下的一半零一个。到第10天,只有一个苹果了。问猴子第一天共摘了多少个苹果?
7.计算s
=a+aa+aaa+aa...a(n个)的值。其中a是一个数字,n表示a的位数。例如,当a=1,n=5时,则要计算的表达式为
s[5]=1+11+111+1111+11111
8.打印九九乘法表。
9.两个羽毛队进行单打比赛,各出3个人。甲队为张三、李四、王五3个队员,已队为陈六、赵七、宋八3个队员。现已经抽签决定比赛名单,有人向队员打听比赛名单,张三说他不和陈六打,王五说他不和陈六和宋八打。请编程找出3对比赛名单。
10.积累调试程序经验,收集错误信息原因(每个同学收集3-5条错误信息原因,并输入电脑形成文字)。
备注:作业1(课本部分例题和习题)已在另一篇博文完成。。。
作业2.
编程求“百钱百鸡”问题。(鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?)
/***** 求“百钱百鸡”问题。(鸡翁一值钱五,鸡母 一值钱三,鸡雏三值钱一。 百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?)*********************/ //设买了x只鸡翁,y只鸡目,z只鸡雏。则有:x+y+z==100, 5*x+3*y+1/3*z==100(15*x+9*y+z==300); #include<iostream> using namespace std; void main() { int x,y,z,i; i=1; for(x=0;x<=20;x++) for(y=0;y<=33;y++) { z=100-x-y; if(15*x+9*y+z==300) { cout<<"第"<<i<<"种情况:" <<" 鸡翁数为:"<<x <<" 鸡母数为:"<<y <<" 鸡雏数为:"<<z <<endl; i++; } } }
作业3. 编程输入一个整数,计算它是几位数字,分别输出每一位数字,并输出各个数位上数字之和。
#include<iostream> using namespace std; int main() { int a,b,sum,i,j,count; cout<<"请输入一个整数:"; cin>>a; b=a; count=0; sum=0; for(i=1;a>0;i++) { a=a/10; count++; } cout<<"整数的位数为:"<<count<<endl; for(j=0;j<count;j++) { sum+=b%10; b=b/10; } cout<<"整数各个数位上数字之和为"<<sum<<endl; return 0; }
作业4. 在一个平面上,有四个圆柱形塔,塔底圆心坐标分别为(2,2)、(-2,2)、(-2,-2)、(2,-2),塔半径为1,塔高为10米,塔外无建筑物。编程,输入任一个点平面坐标,求该点建筑物的高度。
#include<iostream> #include<math.h> using namespace std; int main() { double x,y,s; cout<<"请输入任一平面点坐标(x,y):"<<endl; cout<<"x="; cin>>x; cout<<"y="; cin>>y; s=sqrt((x-2)*(x-2)+(y-2)*(y-2)); if(s<=1) cout<<"该点建筑物高度为10米"<<endl; else cout<<"该点建筑物高度为0米"<<endl; return 0; }
作业5. 编程计算s=1!+2!+3!+......n!(其中n为整数,n!表示计算n阶乘),要求使用两种以上的方法。
方法一:
#include<iostream> #include<math.h> using namespace std; int main() { int n,a,i,j,S; cout<<"计算S=1!+2!+3!+......n!的值"<<endl; cout<<"请输入正整数n:"; cin>>n; S=0; i=1; while(i<=n) { a=1; j=1; while(j<=i) { a=a*j; j++; } S=S+a; i++; } cout<<"S = "<<S<<endl; return 0; }
方法二:
#include<iostream> using namespace std; int main() { int i,a,n,sum; cout<<"当n="; cin>>n; sum=0; a=1; for(i=1;i<=n;i++) { a*=i; sum+=a; } cout<<"1!+2!+3!+.....+n!="<<sum<<endl; return 0; }
作业6. 猴子吃苹果问题:猴子第一天摘了若干个苹果,当时吃了一半,还不过隐,又多吃了一个。第二天,又吃掉余下的一半,又多吃一个。以后每一天,都是吃掉前一天余下的一半零一个。到第10天,只有一个苹果了。问猴子第一天共摘了多少个苹果?
#include<iostream> using namespace std; void main() { int i,x,a; //i之的是第i天,x为第一天摘的总苹果数,a为第i天所剩下的苹果数 a=1; for(i=9;i>=1;i--) { x=(a+1)*2; a=x; } cout<<"第一天摘的苹果树为:"<<x<<"个"<<endl; }
作业7. 计算s
=a+aa+aaa+aa...a(n个)的值。其中a是一个数字,n表示a的位数。例如,当a=1,n=5时,则要计算的表达式为
s[5]=1+11+111+1111+11111
#include<iostream> #include<math.h> using namespace std; int main() { int n,a,i,S1,S; cout<<"计算S =a+aa+aaa+aa...a(n个)的值"<<endl; cout<<"请输入a的值:"<<" a="; cin>>a; cout<<"请输入n的值:"<<" n="; cin>>n; if(a<0||a>9||n<1) { exit(0); } S1=0; S=0; for(i=0;i<n;i++) { S1=S1*10+a; S+=S1; } cout<<" S["<<n<<"]="<<S<<endl; return 0; }
作业8. 打印九九乘法表。
#include<iostream> using namespace std; int main() { int i,j,k; cout<<"九九乘法口诀表"<<endl; for(i=1;i<10;i++) { for(j=1;j<=i;j++) { k=i*j; cout<<j<<"*"<<i<<"="<<k<<' '; } cout<<endl; } }
作业9. 两个羽毛队进行单打比赛,各出3个人。甲队为张三、李四、王五3个队员,已队为陈六、赵七、宋八3个队员。现已经抽签决定比赛名单,有人向队员打听比赛名单,张三说他不和陈六打,王五说他不和陈六和宋八打。请编程找出3对比赛名单。
/*********两个羽毛队进行单打比赛,各出3个人。甲队为张三、李四、王五3个队员, 已队为陈六、赵七、宋八3个队员。现已经抽签决定比赛名单,有人向队员打听比赛名单, 张三说他不和陈六打,王五说他不和陈六和宋八打。请编程找出3对比赛名单。********/ //设张三用a表示,李四用b表示,王五用c表示;陈六用x表示,赵七用y表示,宋八用z表示 #include<iostream> using namespace std; void main() { char i,j,k; //令i是a的对手,j是b的对手,k是c的对手 for(i='x';i<='z';i++) for(j='x';j<='z';j++) { if(i!=j) for(k='x';k<='z';k++) { if(i!=k&&j!=k) { if(i!='x'&&k!='x'&&k!='z') cout<<"比赛名单为:" <<" a对"<<i<<" " <<" b对"<<j<<" " <<" c对"<<k<<" "<<endl; } } } }
作业10. 收集错误信息原因
一,在编译时,出现fatalerror
C1010: unexpected end of file while looking for precompiled headerdirective
的错误.
方法
1、如果发生错误的文件是由其他的C代码文件添加进入当前工程而引起的,则Alt+F7进入当前工程的Settings,选择C/C++选项卡,从Category组合框中选中PrecompiledHeaders,选择NotUsing
Precompiled headers。确定。2、在文件开头添加:#include
"stdafx.h"
二.undeclared
identifier 即是“没有定义过的标识符”
在程序中找到错误的位置和错误的标识符,看该标识符有没有被定义过。如果有,则一般是因为标识符的使用名与定义时的名称不一致,要特别注意大小写。
三,fatal error C1004: unexpected end of file found 即是“在文件末尾发现为终止的意外”
通常是‘}’不成对,特别是没有结束‘}’。
相关文章推荐
- C++的一些知识点汇总
- c++ 之类的前置声明
- C语言中scanf、getchar、gets函数的比较
- 我的C++第四周作业1(第三章部分例题与练习题)
- 中山大学校赛热身赛
- c++函数指针
- C++实现计数排序
- 共用体
- 每天学一点c++:c++常用的头文件介绍
- 编写一个程序,定义一个职工类,输入3个职工的编号、姓名、工资和年龄, 类中的成员函数实现输入、输出,在主函数中定义对象,并计算输出3个职工的平均工资。
- Google关于C++开源项目的规范
- 结构体
- c++ extern关键字
- C语言文件读写函数的对比介绍
- 关于为什么大家都说C++语言难
- C++开源项目
- C语言中abs(int varname)和fabs(double varname)的区别
- C/C++语言深入学习篇
- 1.C语言书写函数一般错误
- c++ cast 深入理解C++类型转换