中国石油大学c语言.doc
《中国石油大学c语言.doc》由会员分享,可在线阅读,更多相关《中国石油大学c语言.doc(88页珍藏版)》请在沃文网上搜索。
1、小明A+B 小明今年3岁了,现在他已经能够认识100以内的非负整数,并且能够进行100以内的非负整数的加法计算。对于大于等于100的整数,小明仅保留该数的最后两位进行计算。如果计算结果大于等于100,那么小明也仅保留计算结果的最后两位。 例如,对于小明来说: 1)1234和34是相等的。 2)35+80=15。 现给定非负整数A和B,你的任务是代表小明计算出A+B的值。 输入 一行,包含两个非负整数A和B(A和B均在int类型可表示的范围内)。 输出 输出小明A+B的结果。星期几输入今天是星期几的序号(星期天的序号为0),输出明天是星期几的英文单词。周日到周六的英文表示:Sun,Mon,Tue
2、,Wed,Thu,Fri,Sat输入一个整数(0-6)输出所表示的英文ASCIISince all we know the ASCII code, your job is simple: input numbers and output corresponding messages.InputThe first line contains one integer T (1=T=1000).The input will contain T positive integers separated by whitespaces .The integers will be no less than 3
3、2.OutputOutput the corresponding message in just one line.Warning: no extra characters are allowed.HintCharacterASCII codeA65a97Whitespace32校庆纪念品六十载弦歌不辍,一甲子薪火相传。2013年10月,中国石油大学迎来了60周年华诞。校庆期间对每位荣归母校的校友都将提供一份完全立方体包装的纪念品,志愿者将其堆放在墙角,具体堆放形状如下图所示:因为纪念品堆得实在是太有规律了,你只要知道它的层数就可以计算所有纪念品的数量了。输入输入数据只有一个整数n,表示这堆纪
4、念品的层数(1=n N 0)。小武告诉滨滨每天可以吃一块或者两块巧克力。假设滨滨每天都吃巧克力,问滨滨共有多少种不同的吃完巧克力的方案。例如:如果N=1,则滨滨第1天就吃掉它,共有1种方案;如果N=2,则滨滨可以第1天吃1块,第2天吃1块;也可以第1天吃2块,共有2种方案;如果N=3,则滨滨第1天可以吃1块,剩2块;也可以第1天吃2块剩1块,共有2+1=3种方案;如果N=4,则滨滨可以第1天吃1块,剩3块;也可以第1天吃2块,剩2块,共有3+2=5种方案。输入一个正整数N。输出滨滨吃巧克力的方案数目【研究创新型】8.1 谁能出线(课内完成)背景:电视台举办“超级学生”才艺大赛,由于报名人数狂多
5、,所以要先进行分组预赛。按规定,每10名学生为一个预赛小组,评委打出分数(0100分),各小组第一名可以进入下一轮;如果有多名学生得分相同都是第一名,则可同时进入下一轮。输入: 按顺序给出一个小组10个人的最后得分(int)。输出: 能够出线的学生序号(09)。#include #include #define size 10 int main() int score size; int i; int max=0; for(i=0;i10;i+) scanf(%d,&scorei); if(maxscorei) max=scorei; for(i=0;i10;i+) if(max=scorei
6、) printf(%dn,i); return 0; 【设计型】8.2 挑选小白鼠描述实验室有一批小白鼠,为了评估他们的健康程度,我们为每一只小白鼠都设定了一个“健康指数”。现在我们需要进一步的评估这批小白鼠的健康均衡程度,因此我们需要从中找到健康指数差距最大的两只小白鼠的编号,以此来进一步的进行评估。关于输入第一行是一个整数n(2= n = 100),表示的是一共有n只小白鼠。 第二行是n个整数(互不相同),分别表示n只小白鼠的健康指数,同时根据输入顺序,从1开始为其编号1,2n。也就是说第一个整数是第一只小白鼠的健康指数,第二个整数是第二只小白鼠的健康指数,依次类推。关于输出输出健康指数差
7、距最大的两只小白鼠的编号。第一个数是健康指数较大的小白鼠的编号,第二个数是健康指数较小的小白鼠的编号。#include #include int main() int n; scanf(%d,&n); int health2n; int i,a,b,max,min; for(i=0;in;i+) scanf(%d,&health1i); max=health10; min=health10; for(i=0;in;i+) if(max=health1i) min=health1i; b=i+1; printf(%d %dn,a,b); return 0; 【设计型】8.3 统计素数的个数求出
8、2 到 m 之间 ( 含 m,m=1000) 所有素数并放在数组 a 中。输入:正整数m输出:从小到大的所有素数,及个数(素数输出的时候用%4d来控制)如:输入:10输出:2 3 5 7 4#include #include #define z a int main() int k,i,m,a,d; scanf(%d,&a); int primez; m=0; for(i=1;ia;i+) primei=i+1; for(i=1;ia;i+) d=1; for(k=2;k=primei&(d!=0);k+) d=primei%k; if(d=0&(primei!=0) if(k=primei)
9、 printf(%4d,primei); m=m+1; printf(n); printf(%dn,m); return 0; 【设计型】8.4 交换理发师傅描述王师傅的发廊距开张已经有10年之久了! 由于王师傅以及其他理发师傅洗剪吹技术娴熟, 发廊有了许多常客, 连毕业多年的学生也会不时回来学校, 到王师傅的发廊做洗剪吹. 常客们都有自己喜欢理发师, 然而随着运营规模的扩张, 理发师的分配时常会出现问题. 现在你的任务就是为顾客们交换理发师傅. 假设有0.n-1共n名顾客, 他们的理发师傅恰巧安排反了. 也就是说n-1的理发师傅安排给了0, n-2的理发师傅安排给了1.请帮助他们找到喜欢的理
10、发师傅吧! 输入第一行一个整型n(1=n=1000), 表示顾客的人数 第二行n个整型, 分别表示现在安排给每位顾客的理发师傅的编号输出以此输出为0.n-1位顾客正确安排理发师傅之后的, 师傅们的编号每个数字由空格隔开, 最后一个数字后无空格。#include #include #define size n int main() int i,n,a,b; scanf(%d,&n); int number2size; for(i=0;in;i+) scanf(%d,&number1i); a=number10; for(i=0;in-1;i+) b=number1n-1-i; printf(%d
11、 ,b); printf(%dn,a); 设计型】8.5 二维数组(课内完成)问题描述:程序定义了 4 4 的二维数组,请编写程序,给二维数组赋值,并使数组下半三角元素中的值乘以n 。例如:数组中的值为假设n为10,则输出结果如下:(输出的数按照4位宽度来输出,即%4d)#include #include int main() int number44,i,j,n; for(i=0;i4;i+) for(j=0;j4;j+) scanf(%d,&numberij); scanf(%d,&n); for(i=0;i4;i+) for(j=0;j=i;j+) numberij=n*numberij
12、; for(i=0;i4;i+) for(j=0;j4;j+) printf(%4d,numberij); printf(n); return 0; 【设计型】8.6 在屏幕上显示杨辉三角形(课内完成)杨辉三角形,又称贾宪三角形,帕斯卡三角形,是二项式系数在三角形中的一种几何排列。其实,中国古代数学家在数学的许多重要领域中处于遥遥领先的地位。中国古代数学史曾经有自己光辉灿烂的篇章,而贾宪三角的发现就是十分精彩的一页。杨辉三角有如下性质:1、每行数字左右对称,由1开始逐渐变大,然后变小,回到1。2、第n行的数字个数为n个。3、每个数字等于上一行的左右两个数字之和。编写程序,输入正数n, 将所有数
13、据存储到二维数组中,并在屏幕上显示对应的杨辉三角形(注意数据之间的空格)。例如:n=5 图形如下:11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 1#include #include #define N 100 #define M 100 int main() int n,i,j,numberNM; scanf(%d,&n); for(i=0;i=n;i+) for (j=0;j=i;j+) if(j=0|j=i) numberij=1; for(i=2;i=n;i+) for(j=1;ji;j+) numberij=numberi-1j-1+numberi-1j;
14、for(i=0;i=n;i+) for(j=0;j=i;j+) printf(%3d,numberij); printf(n); return 0; 【设计型】8.7 插入法排序如果一个数组中保存的元素是有序的(由小到大),向这个数组中插入一个数,使得插入后的数组元素依然保持有序。定义一个数组,长度为11,初始元素为10个,按照从小到大的方式输入,然后输入一个要插入的元素,使得插入后仍然有序#include #include int main() int i,number11,m,b=0; for(i=0;i10;i+) scanf(%d,&numberi); scanf(%d,&m); fo
15、r(i=0;i10;i+) if(number9=m) b=0; else if(numberi=m&m=numberi-1) b=i; break; for(i=9;i=b;i-) numberi+1=numberi; numberb=m; for(i=0;i11;i+) printf( %d,numberi); printf(n); return 0; 【设计型】8.8 求各位数字组成的最大数任意输入一个自然数,输出该自然数的各位数字组成的最大数。例如,输入 1593 ,则输出为 9531 。输入: 自然数 n输出: 各位数字组成的最大数#include #include #define
16、N 100 int main() int n,i,a,m=0,j,temp,numberN; scanf(%d,&n); do a=n%10; numberm=a; n=n/10; m+; while(n!=0); for(i=0;im-1;i+) for(j=i+1;jm;j+) if(numberinumberj) temp=numberj; numberj=numberi; numberi=temp; for(i=0;im;i+) printf(%d,numberi); printf(n); 【设计型】8.9 排序与查找问题描述:上学期,化工13级1-3班同学的C语言考试成绩(人数最多不
17、超过90人)比较理想。现要求从键盘输入每位学生的成绩,编程将成绩按从高到低的顺序进行排序输出,并同时输入指定学生的学号和成绩。输入:有多行。从第一行开始,每行输入两个空格分隔的整数,分别表示每个学生的学号和成绩,当输入负值时,表示输入结束。最后一行输入需要查找的学生学号。输出:有两行。第一行是按由高到低排好序的学生成绩。第二行输出查找到的学生学号和成绩,若没有找到指定学生,则输出未找到信息。#include #define N 1000 int main() int aN , bN; int i,j,h,k,m,n,p,flag=0; scanf(%d %d,&a0,&b0); for(i=1
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中国 石油大学 语言