电话:0731-83595998
导航
首页 > 在线问答 > 计算机 > 计算机题库2
题目内容

字符串str由数字字符组成(长度不超过5个字符),可看作任意进制的数,请补充函数fun(),该函数的功能是:把 str字符串转换成任意进制的数,结果保存在数组xx中,由函数返回转换后数组腆的实际长度。其中x表示str原来的进制, y表示要转换成的进制。例如,输入str=“1111”,x=2,y=10,结果输出:15。如果输入str=“15”, x=10,Y=2,结果输出: 1111。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编

提问人:陈俭龙发布时间:2020-07-03

字符串str由数字字符组成(长度不超过5个字符),可看作任意进制的数,请补充函数fun(),该函数的功能是:把 str字符串转换成任意进制的数,结果保存在数组xx中,由函数返回转换后数组腆的实际长度。其中x表示str原来的进制, y表示要转换成的进制。例如,输入str=“1111”,x=2,y=10,结果输出:15。如果输入str=“15”, x=10,Y=2,结果输出: 1111。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。

试题程序:

include <stdio.h>

include<stdlib.h>

include<string.h>

define N 8

int xx[N];

int fun(char *str,int x,int y)

{

int sum;

int i=0;

char *p=str;

for(i=0; i<N; i++)

xx[i]=0;

sum=*p-'0';

p++;

while (*p)

{

sum=【 】;

p++;

}

i=0;

while(sum!=0)

{

xx[i]=【 】;

【 】;

i++;

}

return i;

}

main ()

{

char str[6];

int i;

int n;

int x;

int y;

printf("Enter a string made up of '0' to

'9' digits character:");

gets(str);

if(strlen (str) >5)

{

printf("Error:string too longer!,

please input again!nn");

exit(0);

}

for(i=0;str[i];i++)

if(str[i]<'0'||str[i]>'9')

{

printf("Error:%c not is '0' to

'9' digits character!nn",

str[i]);

exit(0);

}

printf("The original string: ");

puts(str);

printf("nINPUT x= ");

scanf("%d",&x);

printf("nINPUT y= ");

scanf("%d",&y);

n=fun(str,x,y);

printf("n%s is convered to",str);

for (i=n-1; i>=0; i--)

printf("%d",xx[i]);

}

题目答案

一对一服务

咨询老师
网友评论(共0条评论)

请自觉遵守互联网相关政策法规,评论内容只代表网友观点!

最新评论

点击加载更多评论>>

免费咨询,如何快速提升学历!

立即报名

已经有28179人提升了学历

题库-找答案

已有大量题库

马上做题
相关试题

继续查找其他问题的答案?

长理培训客户端 资讯,试题,视频一手掌握

去 App Store 免费下载 iOS 客户端