C语言程序题精选.doc
文本预览下载声明
1.编写程序,生成如下序列的前n项:
1,2,1,2,3,2,1,2,3,4,3,2,1,2,3,4,5,4,3,2,1,2,… …。
运行结果示例
#includeiostream.h
#includeiomanip.h
main()
{
int n,i,j;
cout输入n值:;
cinn;
coutsetw(3)1;
for(i=1;i=n;i++)
{
for(j=2;j=i;j++)
coutsetw(3)j;
for(j=i-1;j0;j--)
coutsetw(3)j;
}
coutendl;
}
2.已有一个排好序的数组(共10个数,从键盘读入),再输入一个数,要求按次序规律将它插入到数组中并输出结果。运行结果示例:
#includeiostream.h
void main()
{
int a[10],x,i,j;
cout输入数组10个元素的值:endl;
for(i=0;i=9;i++)
cina[i];
cout输入要插入数据的值:;
cinx;
for(i=0;i=9;i++)
if(xa[i])break; /*i=6*/
for(j=9;ji;j--)a[j+1]=a[j]; /*j=6时退出循环,a[8]=a[7]*/
a[j+1]=a[j];
a[j]=x; /*a[6]=x*/
cout结果:endl;
for(i=0;i=10;i++)
couta[i] ;
coutendl;
}
3.用递归方法解决猴子吃桃子的问题(P129习题6.10)。运行结果:1534
#includeiostream.h
int sum(int n)
{
int c;
if(n==10)
c=1;
else
c=(sum(n+1)+1)*2;
return (c);
}
void main()
{
cout猴子第一天共摘了sum(1)个桃子。endl;
}
4.编写一个程序,主函数负责接收两个整数m和n,子函数功能为输出一个指定行数的以“*”构成的三角形图形。运行结果示例:
#includeiostream.h
void san(int m,int n)
{
int i,j,t,k;
if(mn){t=m;m=n;n=t;}
for(i=0;im;i++)
{
for(j=0;jn-i-1;j++)
cout ;
for(k=0;k=2*i;k++)
cout*;
coutendl;
}
for(i=0;in;i++)
{
for(j=0;jn-i-1;j++)
cout ;
for(k=0;k=2*i;k++)
cout*;
coutendl;
}
}
void main()
{
int m,n;
coutInput m and n:;
cinmn;
san(m,n);
}
5.编写一个程序,其中包含一个子函数,功能为删除字符串中指定的某个字符,并显示删除后的字符串。子函数要求:形式为:void delete_string(char str[],char ch);#includeiostream.h
#includestring.h
#includestdio.h
void delete_string(char str[],char ch)
{
int i,t,j;
t=strlen(str);
for(i=0;it;i++)
if(str[i]==ch)
{
for(j=i;jt;j++)
str[j]=str[j+1];
i--;
t=t-1;
}
for(i=0;it;i++)
coutstr[i];
}
void main()
{
char str[81],ch;
printf(Input original string:);
gets(str);
coutInput char (to delete):;
cinch;
coutThe string after deldte:;
delete_string(str,ch);
coutendl;
}
6.编写一个程序,其中包含一个子函数,功能为将读入的密码(字符串)按指定规律翻译回原文后输出。子函数要求:形式为:void decrypt (char str[]);#includeiostream.h
#includestdio.h
void decrypt(char str[
显示全部