初学C语言 调用函数的方法排列出10个字符的逆序1
发布网友
发布时间:2023-10-30 05:04
我来回答
共5个回答
热心网友
时间:2023-11-27 12:03
#include<stdio.h>
int main()
{
void turn(char t[]);
int i,j;
char a[10];
printf("正序:");
for(i=0;i<10;i++)
{
scanf("%c",&a[i]);
}
printf("\n");
turn(a);
printf("逆序:");
for(j=0;j<10;j++)
{
printf("%c",a[j]);//j
}
return 0;
}
void turn(char t[])//指针,[]不要加数据
{
int i,j;
char c;
for(i=0,j=9; i<5;i++,j--)//只要 5次
{
c= t[i];//你这逻辑不清
t[i]=t[j];
t[j]=c;
}
}
热心网友
时间:2023-11-27 12:04
#include<stdio.h>
int main()
{
void turn(char t[10]);
int i,j;
char a[10];
printf("正序:");
for(i=0;i<10;i++)
{
scanf("%c",&a[i]);
}
printf("\n");
turn(a);
printf("逆序:");
for(j=0;j<10;j++)
{
printf("%c",a[j]);//
}
return 0;
}
void turn(char t[10])
{
int i,j;
char b[10];
for(i=0,j=9;i<j;i++,j--)//
{
b[i]=t[j];
t[j]=t[i];//
t[i]=b[i];
}
}
你的太麻烦,而且不规范
#include<stdio.h>
#include<string.h>
int main()
{
void turn(char *t);
char a[100];
gets(a);
turn(a);
puts(a);
return 0;
}
void turn(char *t)
{
char *p=t+strlen(t)-1,temp;
while(t<p)
{
temp=*t;
*t=*p;
*p=temp;
t++;
p--;
}
}
热心网友
时间:2023-11-27 12:04
#include<stdio.h>
#include<string.h>
int main()
{
void turn(char t[10]);
int i,j;
char a[10];
printf("正序:");
for(i=0;i<10;i++)
{
scanf("%c",&a[i]);
}
printf("\n");
turn(a);
printf("逆序:");
for(j=0;j<10;j++)
{
printf("%c",a[j]);//把i改成j
}return 0;
}
void turn(char t[10])
{
int i,j;
//b数组去掉了
char temp;//增加了一个临时变量
for(i=0,j=9;i<5;i++)//这里改了
{
temp=t[j-i];
t[j-i]=t[i];
t[i]=temp;//首尾进行交换
}}
热心网友
时间:2023-11-27 12:05
#include<stdio.h>
char turn(char t[10])
{
int i,j;
char b[10],c;for(j=0;j<10;j++)
{
b[j] = t[j];
}
for(i = 0 ;i < 5;i++)
{
c = b[i];
b[i]=b[9-i];
b[9-i] = c;
}for(j=0;j<10;j++)
{
printf("%c",b[j]);
} return t[10];
}int main()
{
int i,j;
char a[10],c[10];
printf("正序:");
for(i=0;i<10;i++)
{
scanf("%c",&a[i]); getchar();
}
printf("\n");
c[10]=turn(a);
printf("逆序:");
for(j=0;j<10;j++)
{
printf("%c",c[j]);
}
printf("\n");
return 0;
}
可以参考一下。
热心网友
时间:2023-11-27 12:05
有两个问题:
1.main函数第二个for循环里面的a[i]改为a[j];
2.turn函数你可以直接用首尾值交换。
// char temp;
//
// for(i=0;i<5;i++)
//
// {
//
// temp = t[i];
// t[i] = t[9-i];
// t[9-i] = temp;
//
//
// }