C语言上机题目:输入一个字符串,然后按逆序重新存放该字符串.

如定义字符串charstr[10],将“hello”应从键盘输入存入到str中;最后str中存放的应是“olleh”,并输出。... 如定义字符串char str[10],将“hello”应从键盘输入存入到str中;最后str中存放的应是“olleh”,并输出。 展开
 我来答
iiiiiiiipl
2019-06-02 · TA获得超过9923个赞
知道答主
回答量:68
采纳率:66%
帮助的人:3.9万
展开全部

#include<string.h>

#include<stdio.h>

int main()

{

char a[100];

int i,n,j=0,temp;

gets(a);

n=strlen(a); 

for(i=0;i<n/2;i++){

temp=a[i];

a[i]=a[n-1-i];

a[n-1-i]=temp;}

a[n]='\0';

puts(a);

return 0;

}

扩展资料:

数组的使用规则:

1.可以只给部分元素赋初值。当{ }中值的个数少于元素个数时,只给前面部分元素赋值。例如:static int a[10]={0,1,2,3,4};表示只给a[0]~a[4]5个元素赋值,而后5个元素自动赋0值。

2.如不给可初始化的数组赋初值,则全部元素均为0值。

3.如给全部元素赋值,则在数组说明中, 可以不给出数组元素的个数。例如:static int a[5]={1,2,3,4,5};可写为:static int a[]={1,2,3,4,5};动态赋值可以在程序执行过程中,对数组作动态赋值。这时可用循环语句配合scanf函数逐个对数组元素赋值。

参考资料:

百度百科-数组

985967518
推荐于2017-09-08 · 知道合伙人教育行家
985967518
知道合伙人教育行家
采纳数:18027 获赞数:109866
14年本科毕业于河南理工大学,至今就读于河南理工大学攻读硕士学位,从事编程学习已有5年。

向TA提问 私信TA
展开全部

思路:先定义两个字符数组a和b,a先接受键盘输入,依次把a的最后一个字符到第一个字符存入b中,最后再把b复制给a,最终a中存放的就是键盘输入的逆序。

参考代码:

#include<string.h>
#include<stdio.h>
int main()
{
char a[100],b[100];
int i,n,j=0;
gets(a);
n=strlen(a); 
for(i=n-1;i>=0;i--)
b[j++]=a[i];
b[j]='\0';
strcpy(a,b);
puts(a);
return 0;
}
/*
输出: 
afasdghj
jhgdsafa
*/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shbaiyxr
2014-10-28 · 超过30用户采纳过TA的回答
知道答主
回答量:107
采纳率:0%
帮助的人:56.7万
展开全部
#include <stdio.h>
#include <string.h>

int main()
{
char str[10]={0};
int len = 0;
int i = 0;

scanf("%s", str);
len = strlen(str);

for(i=len-1;i>=0;i--)
printf("%c", str[i]);
return 0;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kexun水瓶
2014-10-28
知道答主
回答量:2
采纳率:0%
帮助的人:1458
展开全部
#include<stdio.h>
int main()
{
char str[10];int i;
scanf("%s",str);
for(i=0;str[i]!='\0';i++)
;
for(i;i>0;i--)
printf("%c",str[i-1]);
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
四叶草szz

2021-01-13 · TA获得超过4460个赞
知道答主
回答量:57
采纳率:0%
帮助的人:2.2万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式