帮我编一下这两个C程序题目吧,谢谢

来源:百度知道 编辑:UC知道 时间:2024/07/06 19:09:46
1. 输入n值,输出如图所示回型方阵
当n=5时:3 3 3 3 3 当n=6时:3 3 3 3 3 3
3 2 2 2 3 3 2 2 2 2 3
3 2 1 2 3 3 2 1 1 2 3
3 2 2 2 3 3 2 1 1 2 3
3 3 3 3 3 3 2 2 2 2 3
3 3 3 3 3 3

2.编写一个函数insert(s1,s2,ch),实现在字符串s1中指定字符ch位置处插入字符串s2
天呐,第一道题看不出效果
那就先弄弄第二道题吧,谢谢

(1)//看看是不是你要的“回”字
#include<stdio.h>
#include<stdlib.h>
void main()
{
printf("输入n的值:");
int n;
scanf("%d",&n);
int **p;
int i,j;
p=(int**)malloc(sizeof(int*)*(2*n-1));//分配空间
for(i=0;i<2*n-1;i++)
{
p[i]=(int*)malloc(sizeof(int)*(2*n-1));
}
for(i=0;i<n;i++) //赋值
{
for(j=0;j<2*n-1;j++)
{
p[i][j]=n-i;
p[i+n-1][j]=i+1;
}
}
for(i=0;i<n;i++)
{
for(j=0;j<i;j++)
{
p[i][j]=n-j;
p[i][2*n-2-j]=n-j;
p[2*n-2-i][j]=n-j;
p[2*n-2-i][2*n-2-j]=n-j;
}
}
for(i=0;i<2*n-1;i++)
{
for(j=0;j<2*n-1;j++)
{
printf("%d ",p[i][j]);
}