C语言编程题:将一个数组中的值按逆序重新存放。例:原来顺序为3,6,5,4,1。要求改为1,4,5,6,3
5个回答
展开全部
//下面是我亲手写的程序(如假包换,呵呵),不用调试了,我都调好了,完全可用。
void reverse(int *array,const int size){
int half=size/2;//以中间为对称点,最左边的和最右边的交换,数组大小为奇数时中间的数字不动
int i,temp;
for(i=0;i<half;i++){
temp=array[i];
array[i]=array[size-i-1];
array[size-i-1]=temp;
}
}
int main(){
const int ARRAY_SIZE=7;
int origin[ARRAY_SIZE];
int i;
printf("请输入%d个数字:",ARRAY_SIZE);
for(i=0;i<ARRAY_SIZE;i++)
scanf("%d",&origin[i]);
reverse(origin,ARRAY_SIZE);
for(i=0;i<ARRAY_SIZE;i++)
printf("%d ",origin[i]);
printf("\n");
return 0;
}
void reverse(int *array,const int size){
int half=size/2;//以中间为对称点,最左边的和最右边的交换,数组大小为奇数时中间的数字不动
int i,temp;
for(i=0;i<half;i++){
temp=array[i];
array[i]=array[size-i-1];
array[size-i-1]=temp;
}
}
int main(){
const int ARRAY_SIZE=7;
int origin[ARRAY_SIZE];
int i;
printf("请输入%d个数字:",ARRAY_SIZE);
for(i=0;i<ARRAY_SIZE;i++)
scanf("%d",&origin[i]);
reverse(origin,ARRAY_SIZE);
for(i=0;i<ARRAY_SIZE;i++)
printf("%d ",origin[i]);
printf("\n");
return 0;
}
展开全部
#include<stdio.h>
#include<string.h>
main()
{
char a[100],t;
int i,k;
gets(a);
k=strlen(a)-1;
for(i=0;2*i<=k;i++)
{
t=a[i];
a[i]=a[k-i];
a[k-i]=t;
}
puts(a);
}
其实书上的可以学会的。。。。
#include<string.h>
main()
{
char a[100],t;
int i,k;
gets(a);
k=strlen(a)-1;
for(i=0;2*i<=k;i++)
{
t=a[i];
a[i]=a[k-i];
a[k-i]=t;
}
puts(a);
}
其实书上的可以学会的。。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2009-06-24
展开全部
#include<stdio.h>
#include<string.h>
main()
{
char a[100],t;
int i,k;
gets(a);
k=strlen(a)-1;
for(i=0;2*i<=k;i++)
{
t=a[i];
a[i]=a[k-i];
a[k-i]=t;
}
puts(a);
}
#include<string.h>
main()
{
char a[100],t;
int i,k;
gets(a);
k=strlen(a)-1;
for(i=0;2*i<=k;i++)
{
t=a[i];
a[i]=a[k-i];
a[k-i]=t;
}
puts(a);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2009-06-24
展开全部
我怀疑如果有人给你代码,你会不会调试。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这题目书上有例子的,你还是自己把书多看几遍吧,我开始跟你一样,一看到不懂就想问别人, 先把书上想关例子思路想清楚了,过段时间自己再根据那思路方法自己慢慢编吧.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询