第四周自动1122徐达武
来源:互联网 发布:杭州电魂网络科技股份 编辑:程序博客网 时间:2024/06/06 17:41
2.0
#include<iostream.h>void main(){const int jiweng=20,jimu=33,jichu=100;int i,j,k;for(i=0;i<=jiweng;i++)for(j=0;j<=jimu;j++)for(k=0;k<=jichu;k++)if((i+j+k)==100&&(5*i+3*j+k/3)==100&&k%3==0)cout<<"鸡翁、鸡母、雏鸡各有:\t"<<i<<"\t"<<j<<"\t"<<k<<endl;}这道题实在有点难度,所以看了课本的,使用了for三重循环。
3.1
#include<iostream.h> int res=0; void main() { char str[10];int i; cout<<"请输入一个整数:"<<endl; cin>>str; for(i=0;str[i]!=NULL;i++) { res+=(str[i]-48);cout<<str[i]<<endl; } cout<<"该数是一个"<<i<<"位数"<<endl; cout<<"各位数之和是:"<<res<<endl; }本题使用了数组的方法,注意字符型转成整形需要减去48,。本题是将输入的字符当做整数处理了,虽能达到一样的效果,但是终究不符合“要输入整数”的要求!!所以请看下面这题。
3.2
#include<iostream.h> void main() { long int a,i; int k=0,t,s=0; cout<<"输入一个整型数:"<<endl; cin>>a; i=10; do { k++; if(a<i) break; i=i*10; }while(i<=1000000) ; cout<<"位数:"; cout<<k<<endl; cout<<"输出各位数值:"; while(i>1) { i=i/10; t=a/i; a=a%i; s+=t; cout<<t<<' '; } cout<<endl; cout<<"各个位的数值和:"<<s<<endl; }参照了同学的,并将它改编,主要思路是不断取余数。
5.1
#include<iostream.h>int s;int fun(int n){if(n<=0)return 0;if(n==1)return 1;elsereturn n*fun(n-1);}int re(int n){int i;for(i=1;i<=n;i++)s+=fun(i);return s;}void main(){int i ,j;cout<<"请输入整数n:"<<endl;cin>>i;for( j=1;j<=i;j++){if(j==1)cout<<"阶乘之和:";if(j==i)cout<<j<<"!"<<"=";elsecout<<j<<"!"<<"+";}cout<<re(i)<<endl;}本题使用了递归的方法,还创造了两个小函数,注意函数的调用!!
5.2
#include<iostream.h>int s;int fun(int n){if(n<=0)return 0;int res=1;for(int i=1;i<=n;i++){res*=i;}return res;}int re(int n){int i;for(i=1;i<=n;i++)s+=fun(i);return s;}void main(){int i ,j;cout<<"请输入整数n:"<<endl;cin>>i;for( j=1;j<=i;j++){if(j==1)cout<<"阶乘之和:";if(j==i)cout<<j<<"!"<<"=";elsecout<<j<<"!"<<"+";}cout<<re(i)<<endl;}本题使用普通累乘和累加的方法,分别创造这两个小函数,在主函数中调用时注意不要忽略参数i!!
7.0
#include<iostream.h>void main(){int s1=1;int s2=0;int j,n,a,t;int s[1000];cout<<"请输入a"<<endl;cin>>a;cout<<"请输入n"<<endl;cin>>n;for(j=1;j<=n;j++){s2+=(a*s1);t+=s2;s1*=10;}s[n]=t;cout<<s[n]<<endl;}//计算s[n]=a+aa+aaa+aa...a(n个)的值。其中a是一个数字,n表示a的位数。例如,当a=1,n=5时,则要计算的表达式为 // s[5]=1+11+111+1111+11111本人认为思路还是比较正确的,编译通过了,但是运行不了,不知道哪里有问题,请老师指点!!
将此题改正后:
#include<iostream.h> void main() { int s1=1; int s2=0; int j,n,a,t;t=0; int s[1000]; cout<<"请输入a"<<endl; cin>>a; cout<<"请输入n"<<endl; cin>>n; while(a<=0){cout<<"输入错误,请再次输入a"<<endl;cin>>a;} while(n<=0){cout<<"输入错误,请再次输入n"<<endl;cin>>n;}for(j=1;j<=n;j++) { s2+=(a*s1); t+=s2; s1*=10; } s[n]=t;cout<<'s'<<'['<<n<<']'<<'='; for(int i=1;i<=n;i++)for(int j=1;j<=i;j++)if(i==1)cout<<a<<'+';else if(j==n)cout<<a<<'=';else if(j==i)cout<<a<<'+';elsecout<<a;cout<<s[n]<<endl; } //计算s[n]=a+aa+aaa+aa...a(n个)的值。其中a是一个数字,n表示a的位数。例如,当a=1,n=5时,则要计算的表达式为 // s[5]=1+11+111+1111+11111
8.0
#include<iostream.h>void print(){int i,j;for(i=1;i<=9;i++){ for(j=i;j<=9;j++){cout<<i<<"*"<<j<<"="<<i*j;cout<<" ";}cout<<endl;}}void main(){cout<<"9*9乘法表"<<endl;print();return;}for双重循环,里层循环后,跳到外层,在进入里层依次循环,再跳到外层,不断重复,知道不满足条件!
0 0
- 第四周自动1122徐达武
- 第四周-自动班作业及实验
- 第四周-自动班作业及实验
- 第四周
- 第四周
- 第四周
- 第四周
- 第四周
- 第四周
- 第四周
- 第四周
- 第四周
- 第四周
- 第四周
- 第四周
- 第四周
- 第四周
- 第四周第一天
- linux脚本bash
- C++ new 和delete
- hashTable HashMao ConcurrentHashMap
- Struts2学习(第二篇)——开发第一个Struts2应用
- Android应用开发--MP3播放器开发
- 第四周自动1122徐达武
- 深入浅出学习设计模式(C#实现)-适配器模式
- MODTRAN tape7输出文件解释
- Debian Linux的 kernel(内核)的重新编译
- in7开机蓝屏,进入安全模式也蓝屏,怎么办?!!
- Cannot load 32-bit SWT libraries on 64-bit JVM
- Kali Linux 安装后
- IOS基本动画效果和实现
- Scintilla的使用c++ build