首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中函数fun的功能是:从低位开始依次取长整型变量s中奇数位上的数,构成一个新数放在t中(注意:位置从0开始计算)。 例如: 输入:12345678,则输出:1357 输入:123456789,则输出:2468
给定程序MODI1.C中函数fun的功能是:从低位开始依次取长整型变量s中奇数位上的数,构成一个新数放在t中(注意:位置从0开始计算)。 例如: 输入:12345678,则输出:1357 输入:123456789,则输出:2468
admin
2020-06-02
70
问题
给定程序MODI1.C中函数fun的功能是:从低位开始依次取长整型变量s中奇数位上的数,构成一个新数放在t中(注意:位置从0开始计算)。
例如:
输入:12345678,则输出:1357
输入:123456789,则输出:2468
请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动mmn函数,不得增行或删行,也不得更改程序的结构!
#include<stdio.h>
#pragma warning(disable:4996)
void fun(long s,long*t)
{ long sl=10;
s/=10;
/*********found*********/
*t=s/10;
while(s>0) {
s=s/100;
/*********found*********/
t=s% 10*sl+t;
/*********found*********/
sl/=10;
}
}
main()
{ long s,t;
printf("”\nPlease enter long number:");
scanf("%ld",&s);fun(s,&t);
printf("The result is:%ld\n",t);
}
选项
答案
(1)*t=s%10; (2)*t=s%10*sl+*t; (3)sl*=10;
解析
fun()函数中,S是待处理的数,t是用来存放新数的指针,sl表示当前数字在新数中某位上的基数。由于题意从S的低位到高位从0开始,所以第1个奇数位是S的十位数字,需要将S除以10去掉个位数字,sl赋初值为十位的基数10,将处理后的S的个位数字存放到指针t中。接着通过while循环,每次将S除以100,跳过偶数位上的数字,然后将奇数位上的数字乘以对应的基数s1后,与t指向的数累加,重新存放到指针t中,并将基数s1乘以10,表示下一位的基数,直s为0。
转载请注明原文地址:https://www.kaotiyun.com/show/8qCp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序(strcat函数用于连接两个字符串):#include<stdio.h>#include<string.h>main(){chara[20]="ABCD\0EFG\0",b[]="IJK";strcat(a,b);printf(
有以下程序:#include<stdio.h>#include<string.h>main(){charp[20]={’a’,’b’,’c’,’d’},q[]="abc",r[]="abcde";strcat(p,r);strcpy(P+s
有以下程序:#include<stdio.h>main(){inti,s=0,t[]={1,2,3,4,5,6,7,8,9};for(i=0;i<9;i+=2)s+=*(t+i);printf("%d\n",s);}程序的运行结果是(
有以下程序:#include<stdio.h>main(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){ease0:a++;break;ease1:b++;break;}ease2:a++
有以下程序:#include<stdio.h>intfun(intx,inty){if(x!=y)return((x+y)/2);elsereturn(x);}main(){inta=4,b=5,c=6;pfinff("%d\n
度为3的一棵树共有30个结点,其中度为3,1的结点个数分别为3,4。则该树中的叶子结点数为()。
设有栈S和队列Q,初始状态均为空。首先依次将A,B,C,D,E,F入栈,然后从栈中退出三个元素依次入队,再将X,Y,Z入栈后,将栈中所有元素退出并依次入队,最后将队列中所有元素退出,则退队元素的顺序为()。
设二叉树T的深度为4,其中度为1,2,3,4的结点个数分别为4,2,1,1。则T中的叶子结点数为
以下程序的主函数中调用了其前面定义的fun函数#includemain(){doublea[15],k;k=fun(a);……)则以下选项中错误的fun函数首部是
程序流程图中带有箭头的线段表示的是
随机试题
患者男,78岁。因“双手及膝关节变形、僵硬、屈伸不利,肌肉萎缩”来诊。患者15年前出现双手部分关节疼痛;4个月后出现肿胀及活动受限,并逐渐累及双手其他关节,呈对称性;1年后双膝关节出现疼痛、肿胀、活动受限,右侧肘关节后方发现皮下结节。此后症状反复发作,劳累
Henrywasworried.Thiswashisfirsttimetogotravelingbyair.Hedidnotknowhowtofindhisseat,sohewenttotheairho
财务报表趋势分析法对比依据的数据是()。
周阳,38岁,月工资8000元,参加了社会保险;妻子37岁,无工作收入;儿子12岁:一家三口目前月平均支出为2500元。周阳的父亲68岁,母亲65岁。由于父母亲单位有较好的福利,暂不需要周阳的经济支援。根据以上材料回答问题。周阳投保了一份
下列关于自然人民事行为能力的表述中,错误的是()。(2009年)
我们总是说要用积极的、健康的、向上的文化陶冶人民群众,提高国民素质,那么,就应该为大众提供更多的“价廉物美”的精神产品,尽可能地满足大众的精神文化需求。日趋“贵族化”的东西再向上、再高雅,大众不能享受、欣赏,也是虚无缥缈的。这段文字意在强调(
TheInternetaffordsanonymitytoitsusers,ablessingtoprivacyandfreedomofspeech.Butthatveryanonymityisalsobehind
若看到程序中有以下事件过程,则可以肯定的是,当程序运行时PrivateSubClick_MouseDown(ButtonAsInteger,_ShiftAsInteger,XAsSingle,YAsSingle)Print"VBP
有如下程序:#include<iostream>usingnamespacestd;intf1(intx,inty=5){returnx+y;}intf1(doublex){returnx;}
SinceWorldWarⅡ,therehasbeenaclearlydiscernibletrend,especiallyamongthegrowinggroupofcollegestudents,towardea
最新回复
(
0
)