- 1、本文档共360页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2016年9月计算机二级C语言操作题109套(校订版)讲述
1
#include stdio.h
unsigned long fun(unsigned long n)
{ unsigned long x=0; int t;
while(n)
{ t=n%10;
/**********found**********/
if(t%2==____1____)
/**********found**********/
x=____2____+t;
/**********found**********/
n=____3____;
}
return x;
}
main()
{ unsigned long n=-1;
while(|n0)
{ printf(Please input(0n100000000): ); scanf(%ld,n); }
printf(\nThe result is: %ld\n,fun(n));
}
【参考答案】
(1)0 (2) 10*x (3)n/10
【考点分析】
本题考查:已知某数,如何求该数各个位数值,已知各个位数值,如何表示该数;除法运算。
【解题思路】
填空1:定义变量t用来存放某数的各个位数值,此处判断t是否为偶数,即对2求余结果是否为0。
填空2:将t作为x的个位数,原来x的各个位上升1位,即x=10*x+1。
填空3:每循环一次,通过除法运算,去掉数值最后一位。
【解题宝典】
如果知道某数n的各个位的数值,可以得到该数值n,如n的个位为a、十位为b、百位为c,那么n=c*100+b*10+a。如果知道数值n,可以采用求余和除法操作来表示其各个位,如n%10(取个位)、n/10(取十位),读者可以自己考虑一下,如果是三位数,如何提取各个位?四位数呢?
#include stdio.h
void fun (long s, long *t)
{ int d;
long sl=1;
/************found************/
t = 0;
while ( s 0)
{ d = s%10;
/************found************/
if (d%2 == 0)
{ *t = d * sl + *t;
sl *= 10;
}
s /= 10;
}
}
main()
{ long s, t;
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)
【考点分析】
本题考查:指针型变量作为函数参数;if语句条件表达式,结合奇偶数的表示方法来确定该表达式内容。
【解题思路】
(1) 由函数定义可知,变量t是指针变量,所以对t进行赋初值0是不对的。因为t指向的是存放新数的变量,所以此处应给新数赋初值0,即*t=0。
(2) 变量d表示数s各个位上的数,此处的if条件应为判断d是否为奇数。
#include stdio.h
void fun(char p1[], char p2[])
{
}
main()
{ char s1[80], s2[40] ;void NONO ();
printf(Enter s1 and s2:\n) ;
scanf(%s%s, s1, s2) ;
printf(s1=%s\n, s1) ;
printf(s2=%s\n, s2) ;
printf(Invoke fun(s1,s2):\n) ;
fun(s1, s2) ;
printf(After invoking:\n) ;
printf(%s\n, s1) ;
NONO() ;
}
void NONO ()
{/* ±?oˉêyó?óú′ò?a???t£?ê?è?2aê?êy?Y£?μ÷ó?funoˉêy£?ê?3?êy?Y£?1?±????t?£*/
int i ;
FILE *rf, *wf ;
char s1[80], s2[40] ;
rf = fopen(in.dat,r) ;
wf = fopen(out.dat,w) ;
for(i = 0 ; i 10 ; i++) {
fscanf(rf, %s, s1) ;
fscanf(rf, %s, s2) ;
fun(s1, s2) ;
fprint
您可能关注的文档
- 2016年10月最新版工业产品生产许可证实施细则67-燃气灶讲述.doc
- 2016年10月浙江省普通高校招生选考科目考试物理试题(word版含答案)讲述.docx
- 2016年11月海淀九年级期中物理试卷及答案讲述.doc
- 2016年11月海淀初三期中化学试卷-定稿讲述.doc
- 2016年3月份全国计算机等级考试二级C语言_题库(全)讲述.doc
- 2016年3月央企信息管理师:中级网上经典课程选择题考点讲述.doc
- 空分工艺流程综述.ppt
- 2016年3月计算机二级C语言上机题库最新版(可打印)讲述.doc
- 2016年3月份(80---110上)全国计算机等级考试二级C语言答案与与真题讲述.doc
- 2016年4月份信息技术学考选考考点复习讲述.doc
- 2025《光明乳业营运能力及风险管理问题及完善对策研究【数据图表论文】》8100字.docx
- 2025《良品铺子公司发展能力指标分析实例》3500字.docx
- 2025《恒顺醋业公司财务管理问题及完善对策研究》9100字.docx
- 2025《浅析函数的上下极限及其应用》6700字.docx
- 2025《30万吨年产量的乙二醇合成工艺设计》10000字.doc
- 2025《五轴NC控制铣床软PLC控制系统设计与仿真探究》11000字.docx
- 2025《矩阵与线性变换在中学的应用探究》10000字.docx
- 2025《基于7PS理论的陕西省西安市南五台旅游景区营销策略探究【附问卷】》18000字.docx
- 2025《成都SW蛋糕品牌网络营销问题及完善对策探究》14000字.docx
- 2025《时间序列数据的聚类算法探究【附代码】》11000字.docx
文档评论(0)