c语言改错题:将一个字符数组中的元素逆序存放并输出
发布网友
发布时间:2022-04-29 09:46
我来回答
共4个回答
热心网友
时间:2022-06-25 17:01
在你的代码基础上给你作了修改。。。。。在VC++里面测试了。。。改了的地方注释了下。。希望能帮到你。。。。。
#include "stdio.h"
void sort(char*p,int m)
{
int i;
char change;//改过的地方!!!!!
for (i=0;i<=m/2;i++)
{
change = *(p+i);//改过的地方!!!!!
*(p+i) = *(p+m-i-1);//改过的地方!!!!!
*(p+m-i-1) = change;//改过的地方!!!!!
}
}
void main()
{
int i,n;
char num[20],temp;//改过的地方!!!!!!
printf("Enter n:");
scanf("%d",&n);//改过的地方!!!!!
temp=getchar();
printf("Enter %d",n);
scanf("%s",num);//改过的地方!!!!!!
sort(num,n);
printf("Result is:\n");
for(i=0;i<n;i++)
printf("%c ",num[i]);
}
热心网友
时间:2022-06-25 17:02
sort(char*p,int m)
{
int i;
char change,*p1,*p2;
for (i=0;i<=m/2;i++)
{
p1=p+i;
p2=p+(m-1-i);
//change=*p1=*p2;去掉此句,添加以下三句
change=*p1;
*p1=*p2;
*p2=change;
}
}
#include"stdio.h"
main()
{
int i,n;
char*p,num[20],temp;
printf("Enter n:");
scanf("%d",&n);//修改%c为%d
temp=getchar();
printf("Enter %d",n);//修改%c为%d
for(i=0;i<n;i++)
scanf("%c",&num[i]);//修改%s为%c,添加取地址符号&
p=num;
sort(num,n);
printf("Result is:\n");
for(i=0;i<n;i++)
printf("%c ",num[i]);
}
热心网友
时间:2022-06-25 17:02
sort(char*p,int m)
{
int i;
char change,*p1,*p2;
for (i=0;i<=m/2;i++)
{
p1=p+i;
p2=p+(m-1-i);
change=*p1=*p2; \\这里一行改为change=*p1; *p1=*p2; *p2=change; 这三行
}
}
#include"stdio.h"
main()
{
int i,n;
char*p,num[20],temp;
printf("Enter n:");
scanf("%c",&n); //%c改为%d
temp=getchar();
printf("Enter %c",n); //%c改为%d
for(i=0;i<n;i++)
scanf("%s",num[i]); //num[i]改为&num[i],%s改为%c
p=num;
sort(num,n);
printf("Result is:\n");
for(i=0;i<n;i++)
printf("%c ",num[i]);
}
热心网友
时间:2022-06-25 17:03
/*
Enter n:5
Enter 5: abcde
Result is:
e d c b a
Press any key to continue
*/
sort(char*p,int m)
{
int i;
char change,*p1,*p2;
for (i=0;i<=m/2;i++)
{
p1=p+i;
p2=p+(m-1-i);
//change=*p1=*p2;
change = *p1;
*p1 = *p2;
*p2 = change;
}
}
#include"stdio.h"
main()
{
int i,n;
char*p,num[20],temp;
printf("Enter n:");
//scanf("%c",&n);
scanf("%d",&n);
temp=getchar();
//printf("Enter %c",n);
printf("Enter %d: ",n);
for(i=0;i<n;i++)
//scanf("%s",num[i]);
scanf("%c",&num[i]);
p=num;
sort(num,n);
printf("Result is:\n");
for(i=0;i<n;i++)
printf("%c ",num[i]);
printf("\n");
}