中国海洋大学2017春上机试题高档题答案.doc

上传人:h**** 文档编号:1134263 上传时间:2018-12-11 格式:DOC 页数:12 大小:60KB
下载 相关 举报
中国海洋大学2017春上机试题高档题答案.doc_第1页
第1页 / 共12页
中国海洋大学2017春上机试题高档题答案.doc_第2页
第2页 / 共12页
中国海洋大学2017春上机试题高档题答案.doc_第3页
第3页 / 共12页
中国海洋大学2017春上机试题高档题答案.doc_第4页
第4页 / 共12页
中国海洋大学2017春上机试题高档题答案.doc_第5页
第5页 / 共12页
点击查看更多>>
资源描述

1、高等1【问题描述】将整型参数 x 中每一位上为偶数的数依次取出,构成一个新数返回。高位仍在高位,低位仍在低位。【输入形式】从标准输入中输入一个长整形数【输出形式】将生成的序列输出到标准输出中【样例输入】x=124578902【样例输出】y=24802#includevoid main()long fun(long);long x,y;scanf(“%ld“,y=fun(x);printf(“%ld“,y);long fun(long x)int i,num,wei;long s=0;wei=1;for(i=0;x0;i+)num=x%10;if(num%2=0)s=s+num*wei;wei=

2、wei*10;x=(x-num)/10;return s;2【问题描述】计算并返回满足表达式: 1+(1+2)+(1+2+3)+(1+2+3+4)+(1+2+3+n)void main()int m,n;printf(“m=“);scanf(“%d“,n=fun(m);printf(“n=%d“,n);int fun(int m)int n,i;int s=0;for(n=1;s#includevoid main()void fun(int,int);int x,k;scanf(“%d%d“,if(x2) /x2 时素数由 x+1 开始找起;x=x+1;fun(x,k);void fun(in

3、t n,int k)int j,i;j=0; /记录输出的素数数量for(;jsqrt(n)printf(“%d “,n);j+;4【问题描述】字符串 str 中单词以空格作分隔,如果单词之间不止一个空格,则删除多余的空格,使单词之间只保留一个空格。字符串开始的空格也只保留一个。【输入形式】从标准输入中输入字符串【输出形式】将生成的序列输出到标准输出中【样例输入】Its 10:10 oclock , I am late. 【样例输出】Its 10:10 oclock , I am late. #include#include#includevoid main()int i,n;char s10

4、00; /测试数据或许很长gets(s);for(i=0;si!=0;i+)if(si= sn!=0;n+)sn=sn+1;i-; /因为可能有两个以上空格相连的情况,需要退位检测接下来还有没有空格puts(s);5!【问题描述】有 int 型 56 二维数组,分别将每一行的最大值与本行的最后一个数据(第 6-1 列数据)对调,其余数据保持不变。然后按每一行的最大值对二维数据各行降序排序并输出变换后的数组。【输入形式】从标准输入中输入一个 5*6 的二维数组【输出形式】将生成的二维数组输出到标准输出中【样例输入】(输入的数据的范围【999,-999】)11 52 43 4 25 2222 33

5、 46 58 16 4783 42 54 26 47 0 4 5 6 7 8 9 45 96 17 18 39 2 【样例输出】(输出时用格式符%5d)45 2 17 18 39 960 42 54 26 47 8322 33 46 47 16 5811 22 43 4 25 524 5 6 7 8 9#define M 5#define N 6#includeint main()void fun(int aMN);int aMN=11,52,43,4,25,22,22,33,46,58,16,47,83,42,54,26,47,0,4,5,6,7,8,9,45,96,17,18,39,2;i

6、nt m,n; /m:记录行;n:记录列fun(a);for(m=0;m#includevoid main()char s1000;int l,i;gets(s);l=strlen(s);for(i=0;i=ascanf(“%d“,if(x=0)n0=0;if(x0)while(x!=0)num=x%2;ni=num;i+;x=x/2;i-; /因为上方的 i+最终多加一位for(;i=0;i-)printf(“%d“,ni);8【问题描述】统计字符串 str 中不同字符的个数输出。【输入形式】从标准输入中输入一个字符串【输出形式】将生成的个数输出到标准输出中【样例输入】One world,O

7、ne dream!【样例输出】13【样例说明】统计包含标点符号和空格,大写和小写视为不同字符。#include#includevoid main()char s100,key; /由 s0开始一个个作为 key,扫描其后的字符是否为 keyint l,i,j,num;gets(s);l=strlen(s);num=l; /num 初始值为字符串长度,扫描到相同字符时才减for(i=0;ivoid main()int fm=-2,i,n;double sum=0;printf(“Enter n: “);scanf(“%d“,for(i=1;ivoid main()int fib(int);int m,n,num,i,j=0; /num 为斐波那契数列的数,j 用于计数int a100;scanf(“%d %d“,for(i=1;i+)num=fib(i);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 参考答案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。