精华2
威望145
K币316 元
注册时间2009-9-16
在线时间77 小时
最后登录2017-3-12
一般战友
- 精华
- 2
- 威望
- 145
- K币
- 316 元
- 注册时间
- 2009-9-16
|
D.1
#include<iostream.h>
#include<iomanip.h>
void main()
{ int a[1000],i,j,n;
cout<<"input n:"<<endl;
cin>>n;
for(i=0;i<n;i++)
a=(n-i)*(n-i);
for(i=0;i<n;i++)
{ for(j=0;j<n;j++)
cout<<a[(i+j)%n]<<setw(5);
cout<<endl;
}
}
D.2
#include<iostream.h>
#include<iomanip.h>
int hanoi(int n)
{
if(n==0)return 0;
if(n==1)return 1;
else return (2*hanoi(n-1)+1);
}
void main()
{
int n,m,year,day,hour,minute,second;
cout<<"input disk number:"<<endl;
cin>>n;
m=hanoi(n);
year=m/3153600;
day=(m%3153600)/86400;
hour=(m%3153600%86400)/3600;
minute=(m%3153600%86400%3600)/60;
second=m%3153600%86400%3600%60;
cout<<"If one step needs one second,then it needs :"<<endl<<endl<<"
"<<year<<" year,"<<day<<" day,"<<hour<<" hour,"<<minute<<" minute,"<<second<<" second."<<endl;
}
D.3
#include<iostream.h>
#include<string.h>
#include<math.h>
void main()
{
int i=0,imax=0,la=0,lb=0;
char s[100],t[100],max;
cout<<"输入两字符串,第二字符串插入第一字符串的最大ASCII值的字符后面:"<<endl;
cin>>s>>t;
max=s[0];
while(s[la]!='\0')
{ if(max<s[la])
{
max=s[la];
imax=la;
}
la++;}
la=strlen(s);
lb=strlen(t);
for(i=la;i>imax;i--)s[i+lb]=s;
for(i=0;i<lb;i++)s[i+imax+1]=t;
s[la+lb+1]='\0';
cout<<"插入后的字符串:"<<endl<<s<<endl;
}
D.4
#include<iostream.h>
#include<iomanip.h>
void main()
{ int i,j,n;
cout<<"input the value of n:"<<endl;
cin>>n;
for(i=1;i<=n;i++)
{
for(j=1;j<=n-i;j++)
cout<<" "<< " ";
for(j=1;j<i;j++)
cout<<j<<" ";
for(j=i;j>=1;j--)
cout<<j<<" ";
cout<<endl;
}
}
D.5
#include<iostream.h>
void main()
{
int i,count=0;
for(i=100;i<1000;i+=2)
if((i%10==i/100)||(i%10==(i/10)%10)||(i/100==i/10%10))
{
cout<<i<<'\t';
count++;
}
cout<<endl<<"共有:"<<count<<"个!"<<endl;
}
E.1
#include<iostream.h>
void main()
{
char s[100];
int i=0,count=0;
cout<<"输入字符串:"<<endl;
cin>>s;
while(s!='\0')
{
count++;
if(s>='0'&&s<='9') cout<<count<<'\t';
else
if(s>='a'&&s<='z')s=s-'a'+'A';
i++;
}
i=0;
while(s!='\0')
{
cout<<s;
i++;
}
}
E.2
#include<iostream.h>
fun(int m)
{ int i;
for(i=2;i<m/2;i++)
if(m%i==0)break;
if(i<m/2)return 0;
else return 1;
}
void main()
{ int a[100],i=0,j;
cout<<"输入要分解的偶数,以-1结束\n";
cin>>a;
while(a!=-1)
{
for(j=2;j<a/2;j++)
if(fun(j)&&fun(a-j))
{cout<<a<<"="<<j<<"+"<<a-j<<endl;}//如果对任意输入的偶数,若要只输出符合条件的一组,在if语句中加break;即可
i++;
cin>>a;
}
}
E.3
#include<iostream.h>
void main()
{
int i;
for(i=100;i<=999;i++)
if(i%11==0)
if(i%10!=i/100&&i/10%10!=i/100&&i/10%10!=i%10)
cout<<i<<'\t';
cout<<endl;
}
E.4
#include<iostream.h>
#include<iomanip.h>
void main()
{
int i,j,n;
cout<<"输入钻石形的上半行数n:\n";
cin>>n;
for(i=1;i<=n;i++)
{
cout<<setw(n-i+2)<<"*"<<setw(2*i-2);
if(i!=1)cout<<"*";
cout<<endl;
}
for(i=n-1;i>=1;i--)
{cout<<setw(n-i+2)<<"*"<<setw(2*i-2);
if(i!=1)cout<<"*";
cout<<endl;
}
}
E.5
#include<iostream.h>
#include<math.h>
#define n 10 //待开方的数
void main()
{ float x=1.0,y;
y=0.5*(x+n/x);
while(fabs(y-x)>0.001)
{ x=y;
y=0.5*(x+n/x);
}
cout<<"近似解为:"<<x<<endl;
}
E.6
#include<iostream.h>
#include<iomanip.h>
#define n 11
//数组为11行11列,0行0列不用。
int main()
{
int i,j,a[n][n];
for(i=1;i<n;i++)
{
a[1]=1;
a=1;
}
for(i=3;i<n;i++)
for(j=2;j<=i-1;j++)
a[j]=a[i-1][j-1]+a[i-1][j];
for(i=1;i<n;i++)
{ for(j=1;j<=i;j++) cout<<setw(6)<<a[j];
//修改此处的setw()可以使显示的内容更多
cout<<endl;
}
cout<<endl;
return 0;
}
E.7
#include<iostream.h>
void move(char x,char y)
{
cout<<x<<"-->"<<y<<endl;
}
void hanoi(int n,char one,char two,char three)
{
if(n==1) move(one,three);
else
{ hanoi(n-1,one,three,two);
move(one,three);
hanoi(n-1,two,one,three);
}
}
void main()//main()
{
int m;
cout<<"input the number of disks:"<<endl;
cin>>m;
cout<<"the step to moving "<<m<<" disks:"<<endl;
hanoi(m,'a','b','c');
}
E.8
#include<iostream.h>
void convert(int n)
{
char c;
if(n/10!=0)
convert(n/10);
c=n%10+'0';
cout<<" "<<c;
}
void main()
{ int number;
cout<<"input an integer:"<<endl;
cin>>number;
cout<<"output:"<<endl;
if(number<0)
{ cout<<"_";
number=-number;
}
convert(number);
cout<<endl;
}
E.9
#include<iostream.h>
void main()
{ int a[15]={99,87,82,79,77,76,76,60,49,48,44,33,27,22,11};
int num,i=0,j=14,mid=7;
cin>>num;
while(i<j)
{if(num==a[mid])break;
else if(num<a[mid])i=mid+1;
else j=mid-1;
mid=(i+j)/2;
}
if(num==a[mid])cout<<mid+1<<endl;else cout<<"NO MATCH!"<<endl;
}
E.10
#include<iostream.h>
#include<iomanip.h>
#define n 7
void main()
{ int i,j;
for(i=0;i<n;i++)
{
cout<<setw(i+1);
for(j=0;j<n;j++)
cout<<"*";
cout<<endl;
}
}
E.11
#include <iostream.h>
int main()
{ int i,j,k,jm,t,a[3][3];
cout<<"输入3*3的矩阵:"<<endl;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
cin>>a[j];
for(i=0;i<3;i++)
{ t=a[0];jm=0;
for(j=0;j<3;j++)if(t<a[j]){t=a[j];jm=j;}
for(k=0;k<3;k++)if(t>a[k][jm])break;
if(k==3){cout<<"鞍点值是: "<<t<<endl<<"下标是:"<<"i="<<i<<",j="<<jm<<endl;return 1;}
}
cout<<"不存在鞍点!"<<endl;return 0;
} |
评分
-
查看全部评分
|