



版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精品文档高等1【问题描述】将整型参数 x 中每一位上为偶数的数依次取出,构成一个新数返回。高位仍在高位,低位仍在低位。【输入形式】从标准输入中输入一个长整形数【输出形式】将生成的序列输出到标准输出中【样例输入】 x=124578902【样例输出】 y=24802#include<stdio.h>void main()long fun(long);long x,y;scanf("%ld",&x);y=fun(x);printf("%ld",y);long fun(long x)int i,num,wei;long s=0;wei=1;f
2、or(i=0;x>0;i+)num=x%10;if(num%2=0)s=s+num*wei;wei=wei*10;x=(x-num)/10;return s;2精品文档精品文档【问题描述】计算并返回满足表达式:1+( 1+2 )+(1+2+3 )+(1+2+3+4 )+ +( 1+2+3+n)<=m最大的 n。【输入形式】从标准输入中输入一个长整形数m【输出形式】将生成的最大n 输出到标准输出中【样例输入】m=10000【样例输出】n=38#include<stdio.h>void main()int m,n;printf("m=");scanf(&
3、quot;%d",&m);n=fun(m);printf("n=%d",n);int fun(int m)int n,i;int s=0;for(n=1;s<=m;n+)for(i=1;i<=n;i+)s=s+i;return n-2;3【问题描述】输出比x 大的最初k(k<1000) 个素数 ,x 和 k 键盘输入,输出时用一个空格分隔数据。注意最小的素数是2 。【样例输入】 7 10精品文档精品文档【样例输出】 11 13 17 19 23 29 31 37 41 43【样例说明】 -7 10【样例输出】 2 3 5 7 11 13
4、17 19 23 29#include<stdio.h>#include<math.h>void main()void fun(int,int);int x,k;scanf("%d%d",&x,&k);if(x<=2) /x<=2 时素数由 2 找起x=2;fun(x,k);if(x>2) /x>2 时素数由 x+1 开始找起;x=x+1;fun(x,k);void fun(int n,int k)int j,i;j=0; /记录输出的素数数量for(;j<k;n+)for(i=2;i<=sqrt(
5、n);i+)if(n%i=0)break;if(i>sqrt(n)printf("%d ",n);j+;4精品文档精品文档【问题描述】 字符串 str 中单词以空格作分隔, 如果单词之间不止一个空格, 则删除多余的空格,使单词之间只保留一个空格。字符串开始的空格也只保留一个。【输入形式】从标准输入中输入字符串【输出形式】将生成的序列输出到标准输出中【样例输入】 It's10:10o'clock,Iamlate.【样例输出】 It's 10:10 o'clock , I am late.#include<stdio.h>#in
6、clude<stdio.h>#include<string.h>void main()int i,n;char s1000; /测试数据或许很长gets(s);for(i=0;si!='0'i+)if(si=' '&&si+1=' ')for(n=i;sn!='0'n+)sn=sn+1;i-; /因为可能有两个以上空格相连的情况,需要退位检测接下来还有没有空格puts(s);5!【问题描述】有 int 型 5×6 二维数组,分别将每一行的最大值与本行的最后一个数据(第6-1 列数据
7、)对调,其余数据保持不变。然后按每一行的最大值对二维数据各行降序排序并输出变换后的数组。【输入形式】从标准输入中输入一个5*6 的二维数组【输出形式】将生成的二维数组输出到标准输出中精品文档精品文档【样例输入】(输入的数据的范围【999 , -999 】)115243425222233465816478342542647045678945961718392【样例输出】(输出时用格式符%5d )452171839960425426478322334647165811224342552456789#define M 5#define N 6#include<stdio.h>int ma
8、in()void fun(int aMN );intaMN=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;int m,n;/m:记录行; n:记录列fun(a);for(m=0;m<M;m+)for(n=0;n<N;n+)printf(" %5d ",amn);printf("n");void fun(int aMN)int m,n,k,i,t;for(m=0;m<M;m+)精品文档精品文档k=0;/k:记录第二下标for
9、(n=1;n<N;n+)if(amk<amn)k=n;/循环后 k 为最大数值的第二下标t=amk;amk=amN-1;amN-1=t;for(m=0;m<M-1;m+)k=m;/k: 记录第一下标for(n=m+1;n<M;n+)if(akN-1<anN-1)k=n; /循环后 k 为最大数值的第一下标 if(m!=k)for(i=0;i<N;i+)t=aki;aki=ami;ami=t; /将第 k 行与第 m( m=0,1,2,3,4)行交换;6【问题描述】在字符串s 中,每两个字母之间加一个*,其余字符保持不变并输出字符串。【输入形式】从标准输入中输
10、入一个字符串【输出形式】将生成的字符串序列输出到标准输出中【样例输入】 I had 123_book.【样例输出】 I h*a*d 123_b*o*o*k.#include<stdio.h>#include<string.h>精品文档精品文档void main()char s1000;int l,i;gets(s);l=strlen(s);for(i=0;i<l;i+)if(si>='a'&&si<='z')|(si>='A'&&si<='Z')
11、&&(si+1>='a'&&si+1<='z')|(si+1>='A'&&si+1<='Z')printf("%c*",si);else printf("%c",si);7【问题描述】实现十进制长整型数 x 到二进制的转换。输入一个十进制数,将其转换为二进制数以字符串形式存放于数组中并输出。【输入形式】从标准输入中输入一个长整型数【输出形式】将转换后的二进制数输出【样例输入】13【样例输出】1101【样例说明】考虑正数、
12、负数和零的情况/除 2 取余,倒序输出#include<stdio.h>void main()int x,num,n100,i=0;scanf("%d",&x);精品文档精品文档if(x=0) n0=0;if(x<0)x=-x;while(x!=0)num=x%2;ni=num;i+;x=x/2;i-;ni=-ni; /x<0 时把最后一位转为负数即可(输出时的第一位)if(x>0)while(x!=0)num=x%2;ni=num;i+;x=x/2;i-; /因为上方的 i+最终多加一位for(;i>=0;i-)printf(&
13、quot;%d",ni);8【问题描述】统计字符串str 中不同字符的个数输出。【输入形式】从标准输入中输入一个字符串【输出形式】将生成的个数输出到标准输出中【样例输入】 One world,One dream!【样例输出】 13【样例说明】统计包含标点符号和空格,大写和小写视为不同字符。#include<stdio.h>精品文档精品文档#include<string.h>void main()char s100,key; /由 s0开始一个个作为key,扫描其后的字符是否为keyint l,i,j,num;gets(s);l=strlen(s);num=l;
14、/num 初始值为字符串长度,扫描到相同字符时才减for(i=0;i<l;i+)key=si;if(si!=NULL)for(j=i+1;j<l;j+)if(sj=key)num-;sj=NULL; /若 sj 与之前字符相同,在总数中减去其后将其置为 NULL, 以防再次成为 keyprintf("%d",num);9【问题描述】 输入一个正整数 n, 计算 1-1/4+1/7-1/10+1/13-1/16+ 的前 n 项之和 , 输出时保留 3 位小数。【输入形式 】从键盘输入一个正整数n 。【输入输出样例1 】(下划线部分表示输入)Enter n: 3su
15、m=0.893#include<stdio.h>void main()int fm=-2,i,n;精品文档精品文档double sum=0;printf("Enter n: ");scanf("%d",&n);for(i=1;i<=n;i+)fm=fm+3;if(i%2!=0)sum=sum+1.0/fm;elsesum=sum-1.0/fm;printf("sum=%.3lf",sum);10【问题描述】输入2 个正整数 m 和 n(m1,n 1000),输出 m n 之间所有Fibonacci 数的个数及
16、值 ?要求定义并调用函数fib(k) ,它的功能是返回第k 项 Fibonacci数?例如, fib(7) 的返回值是13?【输入形式】从标准输入中输入一个范围m n(m n 之间用空格分隔)【输出形式】将生成的个数输出到标准输出中,并输出fibonacci 数列 (冒号后无空格 )【样例输入】 1 5【样例输出】 5 fib:1 1 2 3 5#include<stdio.h>void main()int fib(int);int m,n,num,i,j=0; /num 为斐波那契数列的数, j 用于计数 int a100;scanf("%d %d",&
17、;m,&n);for(i=1;i+)num=fib(i);if(num>=m&&num<=n)aj=num;j+;精品文档精品文档if(num>n)break;printf("%d fib:",j);for(i=0;i<j;i+)printf("%d ",ai);int fib(int n)if(n=1|n=2)return 1;else return fib(n-2)+fib(n-1);11【问题描述】统计字符串 str 中单词的个数。单词之间以空格,逗号,句号作分隔,数字也看做单词。单词之间可能不止一个分隔符。【输入形式】从标准输入中输入一组字符串【输出形式】将生成的个数输出到标准输出中【样例输入】 It's10:10o'clock,I am late.【样例输出】 6#include<stdio.h
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025一建《水利水电工程管理与实务》押题卷B卷
- 线上预订线下健身房创新创业项目商业计划书
- 绿色供应链评估创新创业项目商业计划书
- 游戏通信创新创业项目商业计划书
- 教师招聘之《幼儿教师招聘》检测卷讲解附参考答案详解【基础题】
- 教师招聘之《小学教师招聘》考前冲刺分析(达标题)附答案详解
- 2025年教师招聘之《小学教师招聘》题库高频难、易错点100题模拟试题及完整答案详解(全优)
- 教师招聘之《小学教师招聘》考前冲刺练习带答案详解(模拟题)
- 2025年教师招聘之《幼儿教师招聘》练习题(一)附参考答案详解【夺分金卷】
- 教师招聘之《幼儿教师招聘》考前冲刺试卷含答案详解(培优a卷)
- 2025年辽宁省交通建设投资集团招聘(104人)备考练习试题及答案解析
- 七年级上册数学《相交线与平行线》100题练习(含答案)
- 西藏文化考试题目及答案
- 入党培训考试试题2025及答案
- (9月10日)师者如光虽微致远-2025年教师节主题班会课件-2025-2026学年高中主题班会课件
- 公章免责协议合同书模板
- 2025广东海珠区应急管理局招聘安全生产监督检查员18人笔试备考试题及答案解析
- 计算机维护合同补充协议
- 出口食品销售合同范本
- 加盟退款解除合同协议书
- 2025秋外研新版三起点小学英语四年级上册教学计划
评论
0/150
提交评论