关于c语言编程...

2024-12-13 17:57:15
推荐回答(4个)
回答1:

完全原创,已经编译运行通过:
#include
#include
#include
#include

char* reverse(char *str)
{
char tmp;
int i,n;

if (str == NULL)
{
return 0;
}

n=strlen(str)-1;
for(i=0;i{
tmp = str[i];
str[i] = str[n];
str[n] = tmp;
}
return str;
}

char* mix(char *str1,char *str2,char *str)
{
int i=0,j=0;

for(i=0;((*(str1+i)!='\0')&&(*(str2+i)!='\0'));i++)
{
str[j]=str1[i];
str[j+1]=str2[i];
j+=2;
}

if(*(str1+i)!='\0')
{
for(;*(str1+i)!='\0';i++)
{
str[j]=*(str1+i);
j++;
}
}
else if (*(str2+i)!='\0')
{
for(;*(str2+i)!='\0';i++)
{
str[j]=*(str2+i);
j++;
}
}

return str;
}

void main()
{
char a[20]={NULL},b[20]={NULL},str[40]={NULL};

printf("请输入字符串1: ");
cin>>a;

printf("请输入字符串2: ");
cin>>b;

reverse(a);
reverse(b);

mix(a,b,str);

cout<
getch();
}

================================
杨辉三角:
#include
#include

int main()
{
int arr[2][11], n, i, j;

n=10; //这个值可以自己改
for (i=0; i<=10; i++)
arr[0][i] = arr[1][i] = 0;
arr[0][1] = 1;
for (i=1; i<=n; i++)
{
for (j=1; j<=i; j++)
arr[i%2][j] = arr[(i-1)%2][j-1]+arr[(i-1)%2][j];
for (j=1; j<=i; j++)
printf("%-4d", arr[i%2][j]);
printf("\n");
}
printf("\n");

getch();
return 0;
}

回答2:

亲亲累死我了
main()
{
char arr1[100]="abcdef";
char arr2[100]="01234567";
char arr3[200];
int i,count=0,count1=0,len=0,number=0;
len=strlen(arr1) number=strlen(arr1) for(i=0;i {
if(i<2*len)
{
if(i%2==0){
arr3[i]=arr1[count];
count++;
}
else
{
arr3[i]=arr2[count1];
count1++;
}
}else {
if(number==1){
arr3[i]=arr2[count1];
count1++;
}
if(number==2){
arr3[i]=arr1[count];
count++;
}
}

}
for(i=0;i {
printf("%c",arr3[i]);
}

getch();
}

回答3:

才10分...

回答4:

最简单的就是要找规律。