C语言程序修改。
C语言程序修改。#include<stdio.h>#include<string.h>charq[120];voidstr(char*a){inti=strlen(a),...
C语言程序修改。#include<stdio.h>
#include<string.h>
char q[120];
void str(char *a)
{
int i=strlen(a),j;
for (j=0;a[j]!='\0';j++,i--)
{
q[i]=a[j];
}
}
int main()
{
char b[120];
scanf("%s",b);
str(b);
printf("%s",q);
return 0;
} 展开
#include<string.h>
char q[120];
void str(char *a)
{
int i=strlen(a),j;
for (j=0;a[j]!='\0';j++,i--)
{
q[i]=a[j];
}
}
int main()
{
char b[120];
scanf("%s",b);
str(b);
printf("%s",q);
return 0;
} 展开
5个回答
展开全部
数组输出格式问题,同时建议把 i 的值减 1,数组长度和数组下标差1
#include<stdio.h>
#include<string.h>
char q[120];
void str(char *a)
{
int i = strlen(a)-1;
int j;
for (j=0; a[j] != '\0'; j++,i--)
{
q[i]=a[j];
}
}
int main()
{
int i;
char b[120];
scanf("%s",b);
str(b);
for(i = 0; i < 120; i++)
printf("%c", q[i]);
return 0;
}
#include<stdio.h>
#include<string.h>
char q[120];
void str(char *a)
{
int i = strlen(a)-1;
int j;
for (j=0; a[j] != '\0'; j++,i--)
{
q[i]=a[j];
}
}
int main()
{
int i;
char b[120];
scanf("%s",b);
str(b);
for(i = 0; i < 120; i++)
printf("%c", q[i]);
return 0;
}
追问
为什么一定要加上*呢?一去掉就用不了了,对这个不太理解,非常感谢您的解答。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
#include<string.h>
char q[120];
void str(char *a)
{
int i,j,temp=strlen(a);
q[temp]='\0';
for (j=0,i=temp;j<temp;j++)
{
q[--i]=a[j];
}
}
int main()
{
char b[120];
scanf("%s",b);
str(b);
printf("%s",q);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
j没有声明
for(int j =0
for(int j =0
追问
我在前面有声明 j 的
程序能运行,但没有输出结果。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你要修改什么?
追问
你运行一下就知道了,这个程序的功能是要将输入的句子按倒序输出。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询