版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一次作业一、写出下列每个程序运行后的输出结果1. #include<stdio.h>voidmain()(intx=5;switch(2*x-3)(case4:printf("%d",x);case7:printf("%d",2*x+1);case10:printf("%d",3*x-1);break;default:printf("%s","default'n");printf("%sn","switchend.");2. #inc
2、lude<stdio.h>voidmain()(inti,s=0;for(i=1;i<=6;i+)s+=i*i;printf("s=%dn",s);3. #include<stdio.h>voidmain()(inti,s1=0,s2=0;for(i=0;i<10;i+)if(i%2)s1+=i;elses2+=i;printf("%d%dn",s1,s2);4. #include<stdio.h>voidmain()(intn=10,y=1;while(n-)y+;y+;printf("y=%d
3、n",y);5. #include<stdio.h>voidmain()intf,f1,f2,i;f1=f2=1;printf("%d%d",f1,f2);for(i=3;i<=10;i+)f=f1+printf("%d",f);if(i%5=0)printf("n");f1=f2;f2=f;printf("n");6. #include<stdio.h>#include<math.h>voidmain()inti,n;的平方根并取整for(n=2;n<=2
4、0;n+)inttemp=(int)sqrt(n);/sqrt(n)求出nfor(i=2;i<=temp;i+)if(n%i=0)break;if(i>temp)printf("%d",n);7. #include<stdio.h>#include<math.h>constintM=20;voidmain()inti,c2,c3,c5;c2=c3=c5=0;for(i=1;i<=M;i+)if(i%2=0)c2+;if(i%3=0)c3+;if(i%5=0)c5+;)printf("%d%d%dn",c2,c3,
5、c5);)8. #include<stdio.h>#include<math.h>constintM=20;voidmain()inti,s;for(i=1,s=0;i<15;i+)if(i%2=0|i%3=0)continue;printf("%d",i);s+=i;)printf("%dn",s);参考答案1、答案:1114switchend.2、答案:s=91.3、答案:2520.4、答案:y=21.5、答案:112358132134556、答案:2357111317197、答案:10648、答案:157111337第
6、二次作业一、根据下列每个题目要求编写程序a所指向的1.编写一个函数,函数头格式为"voidfun4(char*a,intb)”,分别求出由字符指针b的相应元素。字符串中包含的每种十进制数字出现的次数,把统计结果保存在数组2.编写一个函数,函数头格式为"doubleMean(doubleaMN,intm,intn)”,要求返回维数组amn中所有元素的平均值,假定在计算过程是采用变量v存放平均值。3.编写一个递归函数“intFF(inta,intn)”,求出数组a中所有元素n个元素之积并返回。+1/n>5的最小n4.编写一个主函数,利用while循环,求出并显示满足不等式
7、1+1/2+1/3+值。5.编写一个主函数,求满足不等式22+42+n2<1000的最大n值,假定分别用i和s为取偶数值和累加值的变量,并限定使用do循环编程。参考答案:1、答案:#include<stdio.h>voidfun4(char*a,intb)doif(*a>='0'&&*a<='9')b*a-48+;while(*a+);/*voidmain()char*a="122333444499888”;intb10=0;fun4(a,b);for(inti=0;i<10;i+)printf(&q
8、uot;%d",bi);*/2、答案:#include<stdio.h>constintM=2,N=3;doubleMean(doubleaMN,intm,intn)doublev=0;for(inti=0;i<m;i+)for(intj=0;j<n;j+)v+=aij;returnv/(m*n);/*voidmain()doublea23=1,2,3,4,5,6;printf("%lfn",Mean(a,2,3);*/3、答案:#include<stdio.h>intFF(inta,intn)intmul=1;if(n=1)m
9、ul*=a0;elsemul=an-1*FF(a,n-1);returnmul;)/*voidmain()(inta6=1,2,3,4,5,6;printf("%dn",FF(a,6);*/4、答案:#include<stdio.h>voidmain()doublesum=0;intn=1;while(true)if(sum+1/(double)n>5)break;elsesum+=1/(double)n;n+;printf("%d,%lfn",n,sum);)5、答案:#include<stdio.h>voidmain()
10、ints=0,i=2;dos+=i*i;if(s+(i+2)*(i+2)>=1000)break;elsei+=2;while(true);printf("i=%d,s=%d",i,s);6、答案:#include<stdio.h>voidmain()ints=0,n;printf("请输入n的值:");scanf("%d",&n);for(inti=1;i<=n;i+)s=s*i;printf("n=%d,s=%d",n,s);)第三次作业一、写出下列每个程序运行后的输出结果1 .
11、程序代码:#include<stdio.h>voidSB(charch)switch(ch)case'A':case'a':printf("WW");break;case'B':case'b':printf("GG");break;case'C':case'c':printf("PP");break;default:printf("BB");break;voidmain()charal='b'
12、,a2='C',a3='f;SB(a1);SB(a2);SB(a3);SB('A');printf("n");)2 .程序代码:#include<stdio.h>#include<stdlib.h>doubleSD(inta,intb,charop)doublex;switch(op)case'+':x=a+b;break;case'-':x=a-b;break;case'*':x=a*b;break;case'/':if(b)x=(double)
13、a/b;elseexit(1);break;default:printf("运算符错!n");exit(1);)returnx;voidmain()intx=20,y=8;printf("%3.2lf",SD(x,y,'-');printf("%3.2lf",SD(x,y,'*');printf("%3.2lfn",SD(x+y,y,'/');)3 .程序代码:#include<stdio.h>voidWF(intx,inty)x=x+y;y=x+y;pr
14、intf("subs:x,y=%d,%dn",x,y);)voidmain()intx=18,y=23;printf("main:x,y=%d,%dn",x,y);WF(x,y);x=2*x;printf("main:x,y=%d,%dn",x,y);)4 .程序代码:#include<stdio.h>#include<string.h>voidfun(charss);voidmain()chars15="567891234"fun(s);printf("%sn",s);
15、voidfun(charss)inti,n=strlen(ss);for(i=0;i<n/2;i+)charc=ssi;ssi=ssn-1-i;ssn-1-i=c;5 .程序代码:#include<stdio.h>voidInsertSort(inta,intn)进彳fn-1次循环inti,j,x;for(i=1;i<n;i+)/x=ai;for(j=i-1;j>=0;j-)/为x顺序向前寻找合适的插入位置if(x>aj)aj+1=aj;elsebreak;aj+1=x;)voidmain()inti;inta6=20,15,32,47,36,28);Ins
16、ertSort(a,6);for(i=0;i<6;i+)printf("%d",ai);printf("n");)6.程序代码:#include<stdio.h>voidmain()inta8=3,5,7,9,11,13,15,17);inti,*p=a;for(i=0;i<8;i+)printf("%5d",*p+);if(i+1)%4=0)printf("n");#include<stdio.h>intLA(int*a,intn)inti,s=0;for(i=0;i<n
17、;i+)s+=ai;returns;voidmain()inta=5,10,15,20,25,30;intb=LA(a,4);intc=LA(a+2,3);printf("%d%dn",b,c);8.程序代码:#include<stdio.h>intLB(int*a,intn)inti,s=1;for(i=0;i<n;i+)s*=*a+;returns;inta=1,2,3,4,2,4,5,2);intb=LB(a,4)+LB(&a3,4);printf("b=%dn",b);)二、写出下列每个函数的功能1 .程序代码:intW
18、B(inta,intn,intx)inti;for(i=0;i<n;i+)if(ai=x)return1;return0;)2 .程序代码:intWC(inta,intn,intk)intc=0,i;for(i=0;i<n;i+)if(ai>=k)c+;returnc;#include<stdio.h>#include<stdlib.h>#include<time.h>constintN=10;intff(intx,inty)intz;printf("%d+%d=",x,y);scanf("%d",&
19、amp;z);if(x+y=z)return1;elsereturn0;)voidmain()inti,a,b,c=0;srand(time(0);/初始化随机数序列for(i=0;i<N;i+)之间的一个随机数a=rand()%20+1;/rand()函数产生032767b=rand()%20+1;c+=ff(a,b);)printf("得分:%dn",c*10);intfun6(intm,intn,intb)(if(m<b&&n<b)returnm*n;elseif(m%b=0&&n%b=0)returnb*fun6(m
20、/b,n/b,b);elsereturnfun6(m,n,+b);5 .程序代码:#include<stdio.h>#include<stdlib.h>voidLI(intn)int*a=malloc(n*sizeof(int);inti;for(i=0;i<n;i+)scanf("%d",a+i);for(i=n-1;i>=0;i-)printf("%d",*(a+i);printf("n");free(a);6 .程序代码:intLK(doublea,intn)doubles=0;inti,m=
21、0;for(i=0;i<n;i+)s+=ai;s/=n;for(i=0;i<n;i+)if(ai>=s)m+;returnm;参考答案:一、1、答案:运行结果:GGPPBBWW2、答案:运行结果:12.00160.003.503、答案:运行结果:main:x,y=18,23subs:x,y=41,64main:x,y=36,234、答案:运行结果:4321987655、运行结果:4736322820156、答案:运行结果:3579111315177、答案:运行结果:50608、答案:运行结果:b=184二、1、答案:在整型数组a的前n个元素中查找值为x的元素,找到返回1,找不
22、到返回0。2、答案:统计整型数组a的前n个元素中不小于k的元素个数并返回3、答案:程序随机产生10道20以内整数加法题,请用户回答。并统计得分,4、答案:调用fun6(m,n,2)求m和n的最小公倍数5、答案:读入n个整数,然后逆序输出6、答案:返回双精度数数组a的前n个元素中不小于平均值的元素个数。第四次作业一、写出下列每个程序运行后的输出结果1 .程序代码:#include<stdio.h>structWorkercharname15;/姓名intage;/年龄floatpay;/工资;voidmain()structWorkerx="wanghua",52
23、,2350;structWorkery,*p;y=x;p=&x;printf("%s%d%6.2fn",,y.age,y.pay);printf("%s%d%6.2fn",p->name,p->age+1,p->pay+20);2 .程序代码:#include<stdio.h>#include<string.h>structWorkercharname15;/姓名floatpay;/工资);voidmain()structWorkerx;char*t="liouting"i
24、ntd=38;floatf=493;strcpy(,t);x.age=d;x.pay=f;x.age+;x.pay*=2;printf("%s%d%6.2fn",,x.age,x.pay);)3.程序代码:#include<stdio.h>structWorkercharname15;/姓名intage;/年龄floatpay;/工资);intLess(structWorkerr1,structWorkerr2)if(r1.age<r2.age)return1;elsereturn0;voidmain()structWorkera4
25、="abc",25,420,"def",58,638,"ghi",49,560,"jkl",36,375;structWorkerx=a0;inti;for(i=1;i<4;i+)if(Less(x,ai)x=ai;printf("%s%d%6.2fn",,x.age,x.pay);二、写出下列每个函数的功能1.程序代码:structWorkercharname15;/姓名intage;/年龄floatpay;/工资;voidQA(structWorkera,intn)inti
26、;for(i=1;i<n;i+)scanf("%s%d%f",&,&ai.age,&ai.pay);2.程序代码:structStrNodecharname15;/字符串域structStrNode*next;/指针域);structStrNode*QB(intn)structStrNode*f,*p;if(n=0)returnNULL;f=malloc(sizeof(structStrNode);scanf("%s",f->name);p=f;while(-n)p=p->next=malloc(s
27、izeof(structStrNode);scanf("%s",p->name);)p->next=NULL;returnf;)3 .程序代码:structIntNode结点指针域structIntNode*next;/);structIntNode*FindMax(structIntNode*f)(structIntNode*p=f;if(!f)returnNULL;f=f->next;while(f)if(f->data<p->data)p=f;f=f->next;)returnp;)4 .*程序代码:structIntNodeintdata;/结点值域structIntNode*next;/结点指针域);intCount(structIntNode*f)intc=0;while(f)c+;f=f->next;)returnc;)5 .程序代码:structIntNodeintdata;/结点值域structIntNode*next;/结点指针域);structIntNode*Input(intn)structIntNode*f,*p;f=malloc(sizeof(structIntNode);if(n=0)returnNULL;f->next=N
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年粉煤灰制品质量检测与认证服务合同3篇
- 2024年度装修工程合同施工方案协议2篇
- 2024年度钢混隔层工程竣工验收与保修合同3篇
- 实验室管理体系文件2024年度共享市场开发合同3篇
- 2024年度公共设施建设合同2篇
- 2024年短期聘用协议:项目合作与成果共享规定3篇
- 2024年度钢筋工程成本分析合同2篇
- 状语从句重点难点归纳课件
- 《图形的旋转》课件
- 二零二四年度钢管租赁合同样本5篇
- 发动机机械系统2.0升ltg-9.66维修指南车下
- 2022版义务教育(科学)课程标准(含2022年新增和修订部分)
- 幼儿园二十四节气之小雪课件
- 草沙障施工方案
- 单片机《蜂鸣器》实验报告
- 部编版五年级语文上册第六单元《习作:我想对您说》课件
- 输尿管结石护理查房PPT
- 江苏学业水平测试化学知识点总结苏教版
- 先秦两汉散文(2)概要课件
- 英文疾病介绍Hypertension高血压病
- 加强安置小区物业管理工作的几点建议
评论
0/150
提交评论