早教吧作业答案频道 -->其他-->
C语言高手来~~~1.有一个已排好序的数组,今输入一个数,要求按原来排序的规律将它插入数组中。2.将一个数组中的值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5
题目详情
C语言高手来~~~
1. 有一个已排好序的数组,今输入一个数,要求按原来排序的规律将它插入数组中。
2. 将一个数组中的值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。
3. 有15个数按由小到大顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。如果该数不在数组中,则打印出“无此数”。
4. 编一程序,将两个字符串连接起来,不要用strcat函数。
5. 打印出以下的杨辉三角形(要求打印出10行)。
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
…… …… ……
1. 有一个已排好序的数组,今输入一个数,要求按原来排序的规律将它插入数组中。
2. 将一个数组中的值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。
3. 有15个数按由小到大顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。如果该数不在数组中,则打印出“无此数”。
4. 编一程序,将两个字符串连接起来,不要用strcat函数。
5. 打印出以下的杨辉三角形(要求打印出10行)。
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
…… …… ……
▼优质解答
答案和解析
1、#include
#define N 10
main()
{
int i,j,a[N]={1,3,4,6,7,9,10,14,18};
int number;
scanf("%d",&number);
for(i=0;i if(number break;
for(j=N-2;j>=i;j--)
a[j+1]=a[j];
a[i]=number;
for(i=0;i printf("%5d",a[i]);
printf("\n");
}
2、#include
#define N 5
main()
{
int i,j,a[N]={8,6,5,4,1};
for(i=0;i printf("%5d",a[i]);
printf("\n");
for(i=0;i<=(N-1)/2;i++)
{
int temp;
temp=a[i];
a[i]=a[N-1-i];
a[N-1-i]=temp;
}
for(i=0;i printf("%5d",a[i]);
printf("\n");
}
3、#include
#define N 15
main()
{
int i; //循环变量
int a[N]={30,29,28,26,25,24,20,19,18,15,14,12,10,8,5};
int low=0,up=N-1,middle; //每次查找的区间上下限及区间的中间元素下标
int number;
int flag=0;
scanf("%d",&number);
while(low<=up)
{
middle=(up+low)/2;
if(number low=middle+1;
else
{
if(number==a[middle])
{
flag=1;
break;
}
else
up=middle-1;
}
}
if(flag==1)
printf("the number is found.It's location is a[%d] \n",middle);
else
printf("the number is not found.\n");
}
4、#include
#include
main()
{
int i,j;
char string1[80],string2[20];
gets(string1);
gets(string2);
i=0;
while(string1[i]!='\0')
i++;
j=0;
while(string2[j]!='\0')
string1[i++]=string2[j++];
string1[i]='\0';
puts(string1);
}
5、#include
#define N 10
main()
{
int i,j,a[N][N];
for(i=0;i {
a[i][0]=1;
a[i][i]=1;
}
for(i=2;i for(j=1;j a[i][j]=a[i-1][j-1]+a[i-1][j];
for(i=0;i {
for(j=0;j<=i;j++)
printf("%5d",a[i][j]);
printf("\n");
}
}
运行结果都是对的,我试过了
#define N 10
main()
{
int i,j,a[N]={1,3,4,6,7,9,10,14,18};
int number;
scanf("%d",&number);
for(i=0;i
for(j=N-2;j>=i;j--)
a[j+1]=a[j];
a[i]=number;
for(i=0;i
printf("\n");
}
2、#include
#define N 5
main()
{
int i,j,a[N]={8,6,5,4,1};
for(i=0;i
printf("\n");
for(i=0;i<=(N-1)/2;i++)
{
int temp;
temp=a[i];
a[i]=a[N-1-i];
a[N-1-i]=temp;
}
for(i=0;i
printf("\n");
}
3、#include
#define N 15
main()
{
int i; //循环变量
int a[N]={30,29,28,26,25,24,20,19,18,15,14,12,10,8,5};
int low=0,up=N-1,middle; //每次查找的区间上下限及区间的中间元素下标
int number;
int flag=0;
scanf("%d",&number);
while(low<=up)
{
middle=(up+low)/2;
if(number low=middle+1;
else
{
if(number==a[middle])
{
flag=1;
break;
}
else
up=middle-1;
}
}
if(flag==1)
printf("the number is found.It's location is a[%d] \n",middle);
else
printf("the number is not found.\n");
}
4、#include
#include
main()
{
int i,j;
char string1[80],string2[20];
gets(string1);
gets(string2);
i=0;
while(string1[i]!='\0')
i++;
j=0;
while(string2[j]!='\0')
string1[i++]=string2[j++];
string1[i]='\0';
puts(string1);
}
5、#include
#define N 10
main()
{
int i,j,a[N][N];
for(i=0;i
a[i][0]=1;
a[i][i]=1;
}
for(i=2;i
for(i=0;i
for(j=0;j<=i;j++)
printf("%5d",a[i][j]);
printf("\n");
}
}
运行结果都是对的,我试过了
看了C语言高手来~~~1.有一个已...的网友还看了以下:
1在等差数列an中,a16+a17+a18=a9=-36,其前n项和为sn.(1)求sn的最小值, 2020-05-14 …
用VB的do...loop循环写语句!1、求1到100中偶数的和 2550;2、求1到1000中是 2020-05-16 …
已知:x²+3x+1=0 (1)求x+1/x的值; (2)求3x³+7x²-3x+6的值; 求这已 2020-05-16 …
关于函数最值和值域问题的解答(题目在下)(1)y=(x-1)/(x+2),x属于[1,3],求最大 2020-06-03 …
若代数式(x-1)/2+(2x+1)/6与(x-1)/3+1的值相等,求x的值.已知方程4x+2m 2020-07-01 …
1.已知a+b+c=0,a^2+b^2+c^=1,求:①ab+bc+ac的值②a^4+b^4+c^ 2020-07-09 …
已知(a+1)^2+(b-3)^2=0,求ab已知│x+2│+(y-1)^2+(z-1)^4=0,求 2020-11-01 …
英语高材生来帮帮!胸膛的左侧!爱情禁区!这句话用英语怎么写?要求如下1.要求语法标准!单词高级!最好 2020-11-14 …
1、求语文、数学前三、后三名的姓名2、遇有并列前三,后三的如何办表1表2姓名语文名次数学名次名次语文 2020-11-24 …
1.计算下面式子的值1×2分之1+2×3分之1+3×4分之1+……99×100分之12.求2+|x- 2020-12-17 …