首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:将长整型数中各位上为奇数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。 例如,当s中的数为87
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:将长整型数中各位上为奇数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。 例如,当s中的数为87
admin
2019-04-04
49
问题
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:将长整型数中各位上为奇数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。
例如,当s中的数为87653142时,t中的数为7531。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
void fun(long s,long*t)
{
int d;
long s1=1;
/*********found*********/
t=0;
while(s>0)
{
d=s%10;
/*********found*********/
if(d%2==0)
{
*t=d*s1+*t;
s1*=10;
}
s/=10;
}
}
void main()
{
long s,t;
system("CLS");
printf("\nPlease enter s:");
scanf("%ld",&s);
fun(s,&t);
printf("The result is:%ld\n",t);
}
选项
答案
(1)*t=0; (2)if(d%2!=0)或if(d%2==1)
解析
(1)由函数定义可知,变量t是指针变量,所以对t进行赋初值0是不对的。因为t指向的是存放新数的变量,所以此处应给新数赋初值0,即木t=0;
(2)变量d表示数s各位上的数,此处的if条件应为判断d是否为奇数。
转载请注明原文地址:https://www.kaotiyun.com/show/VnRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下面程序的功能是两个整数进行交换,请填空。sub(int*x,int*y){【】z=*x;*x=*y;*y=z;return;}main(){intm,n,*t1,*t2;
有以下程序 main() { int a [3][2]={0},(* ptr [2],i,j; for(i=0;i<2;i++){ptr=a+i;scanf("%d",ptr);pb++;} for(i=0;i<3;i++)
要正确定义并初始化一个数组a,它含有5个元素,则正确的语句是______。
若有下列定义(设int类型变量占2个字节):inti=8,j=9;则下列语句:printf("i=%u,j=%x\n",i,j);输出的结果是()。
下列程序的输出结果是()。#include“stdio.h”main(){structst{inty,x,z;}union{longi;intj;
以下数据结构中不属于线性数据结构的是()。
有以下程序:#include<stclio.h>main(){charc;while((c=getchar())!=’?’)putchar(--c);}程序运行时,如果从键盘输入:Y?N?<回车>,则
下列程序的输出结果是()。#include<stdio.h>main(){structst{inty,x,z;};union{longi;intj;char
随机试题
偶然性在事物发展过程中()。
在SE序列中,T2加权像是指
对诊断原发性肝痛下列哪项检查具有较高的特异性()
肉桂挥发油中主要成分是( )。
自动化仪表工程连续()开通投入运行正常后,即具备交接验收条件。
获得诺贝尔文学奖的第一位美国黑人作家的主要作品有()。
不具备归档和保存价值的公文,经批准后可以()。
2015年,作为KTV“鼻祖”的钱柜逐步退出了中国内地市场,先后在国内关闭了13家门店:万达大歌星KTV旗下所有门店也都关闭。除了这些连锁巨头以外,在全国更有无数的中小型传统KTV纷纷倒下。在国内,KTV行业萎缩已是不争的事实,传统休闲方式的改变使得KTV
简要介绍费希特的国民教育主张。
有以下程序:#include<stdio.h>intfun(intn){inta;if(n==1)return1;a=n+fun(n—1);return(a);}main(){printf(″%d\n″,fun(5));
最新回复
(
0
)