首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定函数MODI1.C中函数fun的功能是:将一个由八进制数字字符组成的字符串转换为与其面值相等的十进制整数。规定输入的字符串最多只能包含5位八进制数字字符。 例如,若输入:77777,则输出将是:32767。 请改正程序中的错误,使它能得
给定函数MODI1.C中函数fun的功能是:将一个由八进制数字字符组成的字符串转换为与其面值相等的十进制整数。规定输入的字符串最多只能包含5位八进制数字字符。 例如,若输入:77777,则输出将是:32767。 请改正程序中的错误,使它能得
admin
2017-11-27
90
问题
给定函数MODI1.C中函数fun的功能是:将一个由八进制数字字符组成的字符串转换为与其面值相等的十进制整数。规定输入的字符串最多只能包含5位八进制数字字符。
例如,若输入:77777,则输出将是:32767。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
#include
#include
#include
int fun(char *p)
{ int n;
/********** found**********/
n= *p-’o’;
P++;
while(*p!=0) {
/********** found**********/
n=n*8+*P-’o’;
P++;
}
return n;
}
main ()
{ char s[6]; int i; int n;
printf("Enter a string
(Ocatal digits): "); gets(s);
if(strlen(s)>5){printf("Error:
String too longer!\n\n");
exit(0);}
for(i=0; s
; i++)
if (s
<’0’ | |s
>’7’)
{ printf("Error: %c not is
ocatal
digits!\n\n",s
);exit(0); }
printf ("The original string: ") ;
puts (s);
n=fun (s);
printf("\n%s is convered to
integer number: %d\n\n",s,n);
}
选项
答案
(1)n=*p一’0’; (2)n=n*8+*p一’0’;
解析
函数功能是实现八进制到十进制的转换。
(1)第一个标识下面:语句“n=*p-’o’;”中的’o’不是数字零,而是字母’o’,根据前面的分析,因此改为:“n=*p-’0’;”。
(2)第二个标识下面:语句“n=n*8+*P-’o’”,首先进行同(1)相同的修改,变量P没有定义,根据题意要求这里应该是“*p-’0’”,所以此句改为:“n=n*8+*p-’0’;”。
转载请注明原文地址:https://kaotiyun.com/show/Mnxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
当变量c的值不为2、4、6时,值也为“真”的表达式是()。
有以下程序#include#includemain(){printf(“%d\n”,strlen(“ATS\n012\1”));}程序运行后的输出结果是
以下选项中有语法错误的是
若按功能划分,软件测试的方法通常分为白盒测试方法和______________测试方法。
下面关于数据库三级模式结构的叙述中,正确的是()。
以下选项中正确的语句组是()。
下列不属于软件工程3个要素的是()。
下列不属于软件工程的3个要素的是
用筛选法可得到2~n(n
用筛选法可得到2~n(n
随机试题
下列不属于中班幼儿表演游戏的特点的是()
简述两地上市的优点。
计算曲线积分∫(x2+y2)dx+2xydy,其中L是沿抛物线y=x2由0(0,0)到A(1,1)一段.
从根本上讲,上层建筑属于( )。
糖尿病最常见的神经病变是
施工过程中由于各方面原因,确实需要修改原安全技术措施时,必须经( )同意,并办理修改审批手续。
正方:论据:反方
设z=f[χ+φ(χ-y),y],其中f二阶连续可偏导,φ二阶可导,求.
WhyisGriffithoftencalledTheFatheroftheMotionPicture?
Thefearofsmallpox,whichterrorizedtheeighteenthcentury,hasno__________today.
最新回复
(
0
)