4. 有一个已经排好序的数组,要求输入一个数后,按原来顺序的规律将它插入数组中
#include <stdio.h>
int main()
{
printf("电信212李昌盛\n");
int i,j,d,a[5]={1,3,5,7,9},b[6]; //创建两个数组
printf("当前的一个数列为:");
for(j=0;j<5;j++)
{
printf("%d ",a[j]);
}
printf("\n");
printf("请输入一个要插入的正整数:");
scanf("%d",&d);
for(i=0;i<5;i++)
{
if(d<a[i])
{
b[i]=d; //当目标插入值小于当前比较数组元素时,在第二个数组中排前
for(j=i;j<6;j++) //其余元素一次靠后排
{
b[j+1]=a[j];
}
break;
}
else
{
b[i]=a[i];
}
}
for(j=0;j<6;j++)
{
printf("%d ",b[j]);
}
return 0;
}
6. 输出一下的杨慧三角(要求输出10行)
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
……
#include <stdio.h>
#define N 10
int main()
{
printf("电信212李昌盛\n");
int i,j,a[N][N];
for(i=0;i<10;++i)
{
a[i+1][0]=1;
a[i][i]=1;
}
for(i=2;i<10;i++)
{
for(j=1;j<i;j++)
{
a[i][j]=a[i-1][j]+a[i-1][j-1];
}
}
for(i=0;i<10;i++)
{
for(j=0;j<i+1;j++)
{
printf("%d ",a[i][j]);
}
printf("\n");
}
return 0;
}
12. 有一行电文,以按下面规律译成密码:
A--->Z a--->z
B--->Y b--->Y
C--->X c--->x
……
即第1个字母编程第26个字母,第i个字母编程第(26-i+1)个字母,非字母字符不变,要求编程序将密码译回原文,并输出密码和原文。
#include <stdio.h>
#include <string.h>
#define N 1000
int main()
{
printf("电信212李昌盛\n");
char str[N],str1[N];
int i;
printf("请输入密码:");
scanf("%s",str);
printf("密码是:");
printf("%s\n",str);
for(i=0;i<N;i++)
{
if(str[i]>='A'&&str[i]<='Z')
str1[i]=155-str[i];
else if(str[i]>='a'&&str[i]<='z')
str1[i]=219-str[i];
}
printf("原文为:");
printf("%s\n",str1);
return 0;
}
15. 编写一个程序,将字符数组s2中的全部字符复制到字符数组s1中,不用strcpy函数
#include <stdio.h>
#include <string.h>
#define N 1000
int main()
{
printf("电信212李昌盛\n");
char s1[N],s2[N];
printf("请给字符串s2赋值:");
scanf("%s",s2);
for(int i=0;i<N;i++)
{
s1[i]=s2[i];
}
printf("将s2的值复制到s1,此时s1的值为:");
printf("%s",s1);
return 0;
}