C语言作业及参考答案_第1页
C语言作业及参考答案_第2页
C语言作业及参考答案_第3页
C语言作业及参考答案_第4页
C语言作业及参考答案_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C语言及实验作业参考做法分支程序设计上机作业:标题三角形判断描述输入三条边的长,输出这三条边是否构成等边三角形、等腰三角形、直角 三角形、普通三角形,还是不能构成三角形输入数据整数a,b,c的值输出数据等边三角形、等腰三角形、直角三角形、普通三角形,或不能构成三角形输入例如5 5 5输出例如等边三角形#in elude <>int main( ) int a,b,c;scan f("%d%d%d",&a,&b,&c);if(a=b&&b=c) pri ntf("1");else if(a+b>c&

2、amp;&a+c>b&&b+c>a)if(a=b|b=c|a=c) prin tf("2");else if(a*a+b*b=c*c|b*b+c*c=a*a|a*a+c*c=b*b) prin tf("3");else prin tf("4");else prin tf("5");return 0;标题计算函数的值|描述当 x<1 时,y=x当 1§<10 时,y=2x-1当 x时,y=3x-11输入数据整数x的值输出数据一个整数表示函数的值输入例如5输出例

3、如y=9#in clude<> int main() int x,y;sca nf("%d", &x); if(x<1) y=x;else if(x<10) y=2*x-1; else y=3*x-11;prin tf("%d",y); return 0;标题数的别离|描述给一个不多于3位的正整数(1) 计算它是几位数(2) 分别打印出每一位数子(3) 逆序打印出各位数字输入数据一个不多于3位的正整数输出数据位数从高位到低位的各位数字 从低位到高位的各位数字输入例如456输出例如34 5 66 5 4提示123/100=2

4、3/10=123%10=测试数据1: 678 3 6 7 8 8 7 6测试数据2: 45 2 4 5 5 4测试数据3: 8 1 8 8#in elude <> int main() int p,t,s; int i,bit;10m. 其中a是一个数子输入数据两个分别表示a和n的整数输出数据一个表示S(n)的整数输入例如3 5输出例如37035提示2*10+2= 22*10+2=#in clude<> int main() int a,n ,i; 1 ong all=0,t; sca nf("%d %d",&a,&n); t=a;f

5、or (i=1; i<=n; i+) all=all+t;t=t*10+a;prin tf("%d",all); return 0;标题找出1000以内的所有完数描述的-个数等于它的所有因子之和,这个数就称为"完数".找出1000以内 1勺所有元数输入数据无输出数据完数及它的所有因子用逗号格开输入例如无输出例如6 its factor are 1,2,328 its factor are 1,2,4,7,14496 its factor are 1,2,4,8,16,31,62,124,248#i nclude "" mai n

6、()int a,b,k,s;for (k=2; k<1000; k+) 二天早上又将剩下的桃子吃掉一半,又多吃了一个.以后每天早上 都吃了前一天剩下的一半零一个.到第十天早上想再吃时,就只剩 下一个桃子了问第一天共摘了多少桃子输入数据无输出数据表示第一天桃子个数的整数#in elude <> main ()int day,all;all=1;for(day=9; day>0; day-) all=2*(all+1);printf("the first number is %dn,all); 标题输出菱形图案描述输出图案输入数据无输出数据菱形图案输入例如无输出例

7、如* * *提示找规律上下局部规律不同标题输出菱形图案2选做*描述输入一个整数n和一个字符c,输出菱形图案.菱形图案由字符c 构成,图案总共2n+1行输入数据一个整数和一个字符输出数据菱形图案输入例如3*输出例如* * *提示上下n行对称#in clude<>int main()int k,i,j, n;char c;sca nf("%d%c",&n,&c);for(i=1; i<=n+1; i+) for (j=1; j<=n+1-i; j+) putchar(''); for (j=1; j<=2*i-1;

8、j+) putchar(c); prin tf("n");for (i=1; i<=n; i+) for (j=1; j<=i; j+) putchar('');for (j=1; j<=( n+1-i)*2-1; j+) putchar(c); putchar('n');return 0;标题与7无关数的平方和描述一个等-个正整数,如果它能被7整除,或者它的十进制表示法中某 卜位数上的数字为7,那么称其为与7相关的数.现求所有小于 亭于n(* 100)的与7无关的正整数的平方和.输入数据输俞入为一正整数 n,(n <

9、100)输出数据输俞出小于等于n的与7无关的正整数的平方和输入例如2!1输出例如2!336#in clude<> int main()int n;int sum=O;int i,ge,shi;scan f("%d",&n);for(i=1; i<=n; i+)ge=i%10;shi=i/10;if(ge=7|shi=7|i%7=0)con ti nue;sum+=i*i;prin tf("%d",sum);return 0;书面作业:1 从键盘上输入10个整数,计算这些整数的和2 .水仙花数.一个3位数,假设其各位数字之和等于它

10、本身 数.输出所有的水仙花数.(如153)#in clude<>int main().前 20项之和.#in clude<>int main()float sum ,fen zi,fe nm u,a;int i;fen zi=2;fe nm u=1;sum=0;for(i=1; i<=20; i+)sum+=fe nzi/fe nmu;a=fe nmu;fenmu=fen zi;fe nzi+=a;prin tf("%.3f",sum);return 0;4.迭代法求平方根.利用公式x( n+1)=1/2*(x( n)+a/x( n) 求 |x

11、( n+1)-x( n) |<1e-5#in clude <>#in clude <>mai n()float x0,x1,a;printf("input a="); scanf("%f",&a);x1=a/2;do,这个数就称为水仙花计算a的平方根.要x0=x1;x仁(x0+a/x0)/2;while(fabs(x1-x0)>1e-5);prin tf("the sqrt of %f is %fn",a,x1);5 百钱买百鸡:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一,百钱买 百鸡,

12、问翁、母、雏各几何6 某人摘下一些桃子,第一天卖掉一半,又吃了一个,第二天卖掉剩下的一半,又吃了一个,以后每天都是如此处理,到第n天发现只剩下一只桃子.输入 n,输出一共摘了多少桃子.7个工厂制造的产品形状都是长方体,它们的高度都是h,长和宽都相等,一共有六个型号,他们的长宽分别为 1*1,2*2, 3*3, 4*4, 5*5, 6*6.这些产品通常 使用一个6*6*h的长方体包裹包装然后邮寄给客户.由于邮费很贵,所以工厂 要想方设法的减小每个订单运送时的包裹数量.他们很需要有一个好的程序帮他们解决这个问题从而节省费用.现在这个程序由你来设计.输入输入文件包括几行,每一行代表一个订单.每个订单

13、里的一行包括六个整数,中 间用空格隔开,分别为1*1至6*6这六种产品的数量.输入文件将以6个0组成 的一行结尾.输出除了输入的最后一行6个0以外,输入文件里每一行对应着输出文件的一行,每一行输出一个整数代表对应的订单所需的最小包裹数.样例输入0 0 4 0 0 17 5 1 0 0 00 0 0 0 0 0样例输出21数组上机作业:标题选择排序|描述用选择法对10个字符排序输入数据10个字符输出数据排好序的10个字符输入例如fgthyjpdsa输出例如adfghjpsty#in clude<> int main() char a10;int i,j,k,t;for(i=0;i&l

14、t;=9;i+)scan f("%c",&ai);for(j=0;j<=8;j+)k=j;for(i=j+1;i<=9;i+)if(ai<ak) k=i;t=aj;aj=ak;ak=t;for(i=0;i<=9;i+) pri ntf("%c",ai); return 0;标题字符串排序:描述输入10个字符串,按从小到大的顺序排序后输出输入数据10个字符串输出数据从小到大有序的10个字符串输入例如qwe asd zxc hg up cctv are not goto head :例如are asd cctv goto he

15、ad hg not qwe up zxc提示要求用冒泡排序方法#defi ne N 10int mai n() int i, j, k; char aN20,t20;printf(“ in put 10 characters: );for(i=0; i<N; i+) gets(ai);for(i=0; i<N-1; i+)输入数据右干个非负整数c, c的位数=30 每行一个c,当c=-1时中止不要对-1进行计算!输出数据每一个c的结果占一行1假设存在满足c%k = 0的k,输出所有这样的k,中间用空格隔 开,最后一个k后面有空格.2假设没有这样的k那么输出"none&qu

16、ot;输入例如307213 -1输出例如2 3 5 62 3 4 6 8 9 none提示一个整型变量是放不下30位整数的#in clude<>#defi ne N 30+1int getlargenumber(int AN) 6-7-7一月一日7)输入数据输入有一仃,即一月一日星期几(w ).( 1<=w<=7)输出数据输出有一到多行,每行一个月份,表示该月的13日是星期五.输入例如7输出例如110#in clude<>int main()int day13=0,12,31,28,31,30,31,30,31,31,30,31,30;int w;int i

17、;scan f("%d",&w);for(i=1; i<=12; i+)w=(w+dayi)%7;if(w=5) prin tf("%dn",i);return 0;标题计算n!选做题*描述n大于12,小于300输入数据输入一个大于12的整数输出数据输出有一到多仃,每仃输出n!的40位输入例如80输出例如6558int mai n() int a2800=1,1;int n ,i,j,ji nwei,chenji,weishu=1;sca nf("%d",&n);for(i=2; i<=n; i+)jin

18、wei=0;for(j=1; jv=weishu+1|ji nwei; j+) chenji=aj*i+ji nwei;aj=che nji%10; ji nwei=che nji/10; while(aj=O) j-; weishu=j;for(i=weishu,j=0; i>0; i-) pri ntf("%d",ai); j+;if(j%40=0)prin tf("n");prin tf("n");return 0;标题计算鞍点选做题*描述找出一个二维数组中的鞍点,即该位置上的元素在该行上最大,在 该列上最小.也可能没有鞍

19、点.输入数据输入一个5行6列二维数组输出数据二个表示鞍点位置的行、列号 没有鞍点输出none输入例如7 6 15 4 3 22 7 9 4 3 16 8 13 7 1 175 9 10 6 5 34 7 11 2 7 9输出例如2 3#in clude<> int main() int a5 6;int i,j,k,ha ng,lie;int fin d=0;for(i=0; i<5; i+)for(j=0; j<6; j+)scan f("%d",&aij);for(i=0; i<5; i+)k=0;for(j=0;j<6; j

20、+)if(aij>aik) k=j;for(j=0;j<5;j+)if(ajk<aik)break;if(j=5) printf("%d %d",i+1,k+1); find=1;if(!fi nd) prin tf(" non e");return 0;J标题找最长的单词选做题*描述输入一行字符,其中包括假设干个单词,单词之间用空格格开输入数据输入一行字符一个字符串(最长的单词)I HUDDD GH ASDFGHGF FG 8976ASDFGHGF输出数据输入例如 输出例如#in elude <>int main() in

21、t i, pos=0, word=0,start=0,maxle n=0; char strin g81;gets(stri ng);for(i=0; stri ngi!='0' i+)if (stri ngi='')if(word=1 &&i-start>maxle n)pos=start; maxle n=i-start; word=0;else if(word=0) word=1; start=i; for(i=pos; stri ngi!=' '&&stri ngi!='0'i+) p

22、rin tf("%c",stri ngi);return 0;标题字符串比拟描述输入两个字符串,比拟这两个字符串的大小.比拟时从头开始依次 比拟两个串的对应字符,如果都相同,输出0,否那么输出不同处两个字符ASCII码的差.输入数据两个字符串输出数据一个整数输入例如asdfg asghd输出例如-3提示3组测试数据: br 和 bhj br 和 brg brg 和 br#in clude<>int mai n() char s120,s220;int i,cha=0;gets(s1); gets(s2); i=0;for(i=0;s1i&&s2i

23、; i+)if(s1i!=s2i) break;cha=s1i-s2i;prin tf("%d",cha);return 0;|书面作业:1 输入10个整数,输出最小值及最小值的下标.2 字符串复制.输入一个字符串,把它复制到一个字符数组中,并输出.3找出一个5*6的二维数组的鞍点.一个数组的鞍点是一个位置 (行号,列号), 该位置上的元素在该行值最大,在该列值最小.一个数组可能有一个鞍点,也可能 没有鞍点.4. 字符分类统计.输入3行字符,分别统计其中英文大写字母、小写字母、数字、 空格及其他字符的个数.5. 判断一个字符串是否是回文如abcba(顺读和逆读相同)6 .折

24、半查找.有15个数,按从小到大的顺序存放在一个数组中.输入一个数, 查找该数是数组中的第几个数.如果该数不在数组中,那么输出“找不到7. 矩阵的乘法运算8. 用筛选法求素数.对于一个整数x,只要删去所有不超过sqrt(x)的素数p的 所有倍数(不含p),剩下的就是不超过x的全部素数.9 .输入1000个050的整数,统计每个数出现的次数10 .公元元年元月元日(1年1月1日)是星期一,确定公元y年m月d日是星 期几11. A,B,C,D,E合伙夜间捕鱼,凌晨时都睡了.A第1个醒来,将鱼平分成5份, 多余1条扔掉,回家了.B第2个醒来,将鱼平分成5份,多余1条扔掉,回家 了; C、D、E依次醒来

25、,按同样的方法分鱼.问5人至少合作捕到多少条鱼每 人醒来后看到多少条鱼12. 完美立方.问题描述:aA3= bA3+ cA3+ dA3 为完美立方等式.例如 123= 6A3+ 8A3+ 10A3. 编写一个程序,对任给的正整数 N (N < 100),寻找所有的四元组(a, b, c, d), 使得 aA3= bA3+ cA3+ dA3,其中 1<a, b, c, d < N.输入:正整数 N (N < 100)输出:每行输出一个完美立方,根据a的值,从小到大依次输出.当两个完美立方等式中a的值相同,那么依次根据b、c、d进行非降升序排列输出,即b值 小的先输出、然后

26、c值小的先输出、然后d值小的先输出.#in clude <>int main()int n;sca nf("%d",&n);int i, cube101;for(i=0;i<=100;i+) cubei=i*i*i;int a,b,c,d;for(a=2;a<=n; a+)for(b=2;b<a;b+) for(c=b;c<a;c+)for(d=c;d<a;d+)if(cubea = cubeb+cubec+cubed)prin tf("Cube = %d, Triple = (%d,%d,%d)n",a

27、,b,c,d);return 0;13. 给定一个整数序列,判断其中有多少个数,等于数列中其他两个数的和.比 如,对于数列1 2 3 4, 这个问题的答案就是2,由于3 = 2 + 1,4 = 1 + 314. 猜字游戏.计算机生成一个随机数,用户来猜.猜对数字但是位置不对用 nB来表示,位置正确用nA表示.例如随机数:2468一猜:0123 0A,1B二猜:1234 0A,2B三猜:2345 1A,1B四猜:2346 1A,2B五猜:8346 0A,3B六猜:2846 1A,3B七猜:2486 2A,2B八猜:2468 4A15. A,B,C是小学老师,各教两门课,互不重复.共有 6门课:语

28、文、算术、政 治、地理、音乐和美术.:(1) 政治老师和算术老师是邻居(2) 地理老师比语文老师年纪大(3) B最年轻(4) A经常对地理老师和算术老师讲他看过的文学作品(5) B经常和音乐老师、语文老师一起游泳16. 过年了,村里要庆祝一下.村长对村里的 128个村民说:做一个游戏,让每 个人把出生年+月+日得到一个数.例如:1968年10月28日=1968+10+28=2006 然后把这个数报上来.村里有一笔钱要作为游戏的奖金,数额为M元.如果有人 报上来的数字与M相同,就把这笔钱发给这些人.如果只有一个人得奖,奖金都 归这个人.如果有多于一个人得奖,那么他们平分这笔钱.现在让我们来写一段

29、程 序算算都有哪些人得到了奖金得到多少函数上机作业:标题折半查找描述输入10个从小到大的数,再输入一个数x,用折半方法查找x在10 个数中的位置(0-9),输出-1表示找不到.输入数据10个从小到大的整数和一个整数输出数据一个表示位置的数(-1至9)输入例如1 2 3 4 5 6 7 8 9 10 1输出例如0提示注意折半查找的方法标题找最大数选作题*描述利用函数找出9个数的最大值.请设计一个函数找出9个数的最大 值,在主函数中调用这个函数,输出最大值.输入数据9个整数输出数据1个表示最大值的整数输入例如3 4 7 2 99 2 4 6 1输出例如99提示必须使用函数标题判断素数函数描述写一个

30、判素数的函数,在主函数输入一个整数,输出是否素数信 息.输入数据整数输出数据YES或者NO输入例如42输出例如NO标题数组转置描述无输入数据输入一个4*4矩阵输出数据无输入例如1 2 3 45 6 7 8910 11 1213 14 15 16输出例如1 5 9 132 6 10 143 7 11 154 8 12 16提示使用3d俞出标题百分制换算为等级分1选作题*描述根据百分制得分给出等级分设计一个函数根据百分制得分给出 等级分,在主函数中调用这个函数输入数据一个表示分数的整数输出数据一个表示对应等级的字符输入例如65输出例如D提示必须定义函数95-100 A81-94 B70-80 C6

31、0-69 D59以下E标题字符分类统计描述与一个函数,统计一个子符串中子母、数子、空格及其他子符的个 数.在主函数中输入字符串和输出统计结果输入数据一个字符串输出数据四个整数,发表表示字母、数字、空格及其他字符的个数输入例如g6g 7g*g*k输出例如5 2 3 4提示一个函数只能返回一个值标题成绩统计描述输入10个学生5门课的成绩,分别写3个函数完成:1每个学生的平均分2每门课的平均分3找出最高分学生的学号1-10和课程1-5 在主函数中调用这3个函数输入数据一个10行5列的数组输出数据110个整数,分别表示每个学生的平均分25个整数,分别表示每门课的平均分32个整数,分别表示最高分学生的学

32、号和课程 都用3d输出输入例如97 98 87 86 6577 88 99 88 7767 68 69 70 7177 68 87 89 8877 88 78 89 7786 67 66 65 6463 62 61 99 10076 78 79 77 8965 65 65 65 6598 98 98 98 98输出例如86 85 69 81 81 69 77 79 65 9878 78 78 82 797 5提示可以先初始化数组,程序正确后才改为键盘输入成绩.标题排序及查找描述分别用3个函数完成:1输入10个职工的姓名和职工号2按职工号从小到大排序,职工号也随之调整3根据职工号,用折半查找的方

33、法查找该职工的姓名主函数调用这3个函数,并在主函数中输入3中的职工号,输 出查询结果输入数据10个职工的姓名和职工号姓名是字符串,职工号是整数1个职工号输出数据排好序的职工号与姓名 查找到的姓名,找不到输出 NO输入例如zha ngsan 10048 lisi 10027 wangwu 20046 zha ngdan 10003 zha nghao 30056 yaomi ng 20037 guoyue 10088 lin dan 30002 she 20005 zhouhuajian 10002 20005输出例如zhouhuajian 10002 zha ngdan 10003 lisi

34、10027 zha ngsan 10048 guoyue 10088 she 20005 yaomi ng 20037 wangwu 20046 lin dan 30002 zha nghao 30056 she标题计算日期描述给出年月日,计算该日是该年的第几天输入数据年,月,日输出数据天数输入例如2021,3,2输出例如62标题十六进制数转换为十进制数描述输入一个十六进制数,转换为十进制数输出输入数据个表示十八进制数的子付串输出数据一个整数输入例如1a6输出例如422提示十六进制数不能用乂以整数形式接收#in clude<>int cha nge(char a,i nt n) i

35、nt t,le n;if(n=0)return 0;t=a n-1>'9'a n-1-'a'+10:a n-1-'0'return cha nge(a ,n-1)*16+t;int mai n() char char168;in t in t10;gets(char16);strlwr(char16);in t10=cha nge(char16,strle n(char16);prin tf("%d",i nt10);return 0;标题验证歌德巴赫猜测描述验证 歌德巴赫猜测,即:任意一个大于等于 6的偶数均可表示成两

36、个素 数之和.输入数据输入只有一个正整数 x.x<-2000输出数据如果x不是大于等于6的偶数,那么输出一行:Error!否那么输出这个数的 所有分解形式,形式为:x-y+z其中x为待验证的数,y和z满足y+z-x ,而且y<-z ,y和z均是素数. 如果存在多组分解形式,那么根据y的升序输出所有的分解,每行一个分解表达式.注意输出不要有多余的空格.输入例如100输出例如100-3+97100-11+89100-17+83100-29+71100-41+59100-47+53#in clude <>#in clude <>/*判断num是否是素数,是那么返回

37、1,否那么返回0*/int prime(i nt num)int k,i;k=sqrt (nu m);for(i=2; i<=k; i+)if(nu m%i=0) return 0;return 1;int main() int n,i,j;sea nf("%d",&n);if(* 6| n%2) prin tf("Error!");else for(j=3; j<=n /2; j+=2) if(prime(j)&&prime( n-j)b8,其中bi为相应摆法中第i行皇后所处的列数.已经知道8皇 后问题一共有92组解

38、即92个不同的皇后串.给出一个数b ,要求输出第b个串.串的比拟是这样的:皇后串x 置于皇后串y之前,当且仅当将x视为整数时比y小.输入数据第1行是测试数据的组数n ,后面跟着n行输入.每组测试数据 占1行,包括一个正整数b1 <= b <= 92输出数据输出有n行,每行输出对应一个输入.输出应是一个正整数,是 对应于b的皇后串.输入例如2192输出例如设计一个函数找出9个数的最大值,在主函数中调用这个函数,输出最大值.2 根据百分制得分给出等级分.设计一个函数根据百分制得分给出等级分,在主 函数中调用这个函数3顺序查找.输入10个数,再输入一个数x,用从头到尾或从尾到头的方法查找

39、x在10个数中的位置1-10,输出0表示找不到.4写一个函数,将一个5行5列的数组转置.在主函数中输入和输出数组元素.不能使用全局变量.5写一个递归函数,将一个整数反序输出.6 写一个递归函数,把一个数组的元素逆置.在主函数中输入和输出数组元素.7编写一个指数运算的函数,参数(doublent)8皇后可以走水平、垂直、斜线.在8X8棋盘上如何摆放8个皇后,使得每个 皇后都没有被吃掉的危险.9. 从楼上走到楼下共有h个台阶,每一步有3种走法:走1个台阶;走2个台 阶;走3个台阶.问可以有多少种方案并将所有的方案输出.10. 某人摘下一些桃子,第一天卖掉一半,又吃了一个,第二天卖掉剩下的一半, 又

40、吃了一个,以后各天都是如此处理,到第n天发现只剩下一只桃子,编写递归 函数,n是参数,返回值是一共摘的桃子数int pear(i nt n)if (n=1)return 1;elsereturn ( 2 * ( pear( n-1 ) + 1);11. 7.验证“ 1+仁2对任何大于等于6的自然数n,n之内的所有大于等于6 的偶数均可以表示为两个素数之和.请验证这个猜测.要求:(1 )从键盘上输入一个大于6的自然数(2) 以C=A+B勺形式验证,每个偶数只能给出一个验证式(1不是素数).(3) 行只能输出一个“ C=A+B(4) 写一个判断素数的函数并调用例如:输入16输出:6=3+38=3+

41、510=3+712=5+714=7+716=5+11编译预处理上机作业:标题带参数的宏练习1-交换描述定义一个带参数的宏,使两个参数的值互换.在主函数中输入两个 整数,并输出交换后的值输入数据两个整数输出数据交换后的两个整数输入例如7 8输出例如8 7#in clude<>#defi ne s(a,b) int t; t=a; a=b; b=t; int main() int x,y;scanf("%d %d",&x,&y);s(x,y)prin tf("%d %d",x,y);return 0;标题带参数的宏练习2-计算机三

42、角形的面积描述定义两个带参数的宏,一个计算三角形三边之和的一半,另一个计 算三角形的面积.在主函数中输入三角形的三条边,输出三角形的 面积.输入数据三个整数分别表示三角形的三条边的边长输出数据1个表示三角形面积的实数输入例如6 6 6输出例如#in clude<>#defi ne s(a,b,c) (a+b+c)/#defi ne area(a,b,c) sqrt(s(a,b,c)*(s(a,b,c)-a)*(s(a,b,c)-b)*(s(a,b,c)-c)int main()int x,y,z;float mian ji;scan f("%d%d%d", &a

43、mp;x,&y, &z);mianji=area(x,y,z);prin tf("%f",mianji);return 0;标题带参数的宏练习3 -判断闰年描述定义一个宏,判断该年份是否是闰年输入数据一个表示年份的证书输出数据是闰年输出YES否那么输出NO输入例如2100输出例如NO#in clude<>#defi ne leap(y) (y)%4=0&&(y)%100!=0|(y)%400=0int main()int year;scan f("%d", &year);if(le ap(year) p

44、uts("YES"); else puts("NO");return 0;标题文件包含练习描述将中的3个函数放在一个头文件中:1输入10个职工的姓名和职工号2按职工号从小到大排序,职工号也随之调整3根据职工号,用折半查找的方法查找该职工的姓名主函数调用这3个函数,并在主函数中输入3中的职工号,输 出查询结果输入数据10个职工的姓名和职工号姓名是字符串,职工号是整数 1个职工号输出数据排好序的职工号与姓名查找到的姓名,找不到输出 NO输入例如zha ngsan 10048 lisi 10027 wangwu 20046 zha ngdan 10003 zh

45、a nghao 30056 yaomi ng 20037 guoyue 10088 lin dan 30002 she 20005 zhouhuajian 10002 20005输出例如zhouhuajian 10002 zha ngdan 10003 lisi 10027 zha ngsan 10048 guoyue 10088 she 20005 yaomi ng 20037 wangwu 20046 lin dan 30002 zha nghao 30056 she书面作业:分别用函数和带参数的宏,从3个数中找出最大数.并比拟它们的差异指针上机作业:本章作业均要求用指针完成标题整数有序输

46、出描述输入3个整数,按由小到大的顺序输出.输入数据三个整数输出数据二个有序整数输入例如7 9 4输出例如4 7 9要求主函数中主要负责数据的输入/出#in clude<>void swap(i nt *p1, int *p2) in t p;p=*p1; *p 1= *p2; *p2=p;void excha nge(i nt *q1,i nt *q2,i nt *q3) if (*q1>*q2) swap(q1,q2);if (*q1>*q3) swap (q1,q3);if (*q2>*q3) swap(q2,q3);int mai n() int a,b,c

47、,*p1,*p2,*p3;sca nf("%d%d%d",&a,&b,&c);p仁&a; p2=&b; p3=&c;excha nge(p1,p2,p3);prin tf("%d %d %dn",a,b,c);return 0;标题数据对换描述输入10个整数,将其中最小的数与第一个数对换,把最大的数与 最后一个数对换.写3个函数:输入10个数;进行处理; 输出10个数输入数据10个整数输出数据10个整数输入例如10 9 7 3 2 6 5 4 8 1输出例如1 9 7 3 2 6 5 4 8 10提示其他数

48、据不要变化void in put(i nt *p)2f粗体局部输入例如96 82 88 99 9778 89 96 76 6567 55 87 34 4487 88 89 87 93输出例如average of score 1 isnu mber 3 failed with 3his score is67 55 87 34 44average score isnu mber 1 is very goodhis score is96 82 88 99 97average score isnu mber 4 is very goodhis score is87 88 89 87 93average

49、 score is要求用两种指针#in clude<>void average1(int (*p)5,int n) fn",aver*n); void average2(i nt (*p)5, i nt *a) fn ",sum/;void find2(int (*p)5,int *a).2f£ sinxdx £ cosdx £ exdx3.2f.2f.2f.2f1500 米 100 米 800 米 100 米3c106 l24 f23 m(1) 写一个函数,将读入的日期赋值给结构体类型数据(2) 写一个函数验证输入日期是否合法(3) 写一个函数用以下格式输出日期: April 25,2002 在主函数中调用以上函数.4*.模拟升级游戏发牌.把含大小王的54张牌随机发给4家(用E、S、W N表示), 每家12张,留6张底牌.(提示,为实现真正的随机,设置sran d( un sig ned)time(NULL);)#in clude <>void srand(un sig

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论