还剩20页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
1.分析下面的程序代码,写出程序的运行结果876一ttinclude stdio.h int main{int n=9;whilen6{n--;printfH%dn n;}return0;z}
2.输入n的数值,输出n!的值#include stdio.hint mainintfac=l,i=l,n;printf请输入一个整数:\n”;scanf”%d”,n;ifn==011n==l fac=l;elsewhilei=n{fac=fac*i;i++;printf%d!=%d\n,n,fac;
3.分析下面的程序代码,写出程序的运行结果#include stdio.h int maininti=20;doprintf n%dn,i—;while i10;return0;
4.分析下面的程序代码,写出程序的运行结果5050#include stdio.hint maininti,sum=0;fori=l;i=100;i++sum+=i;printf%d\n,sum;return0;
5.编程求S产也0++…+aa..a的值,其中o是一个数字例如3+33+333+3333+33333此时,a=3,n=5,a和〃由键盘输入#include stdio.hint mainint a,n,temp sum=O,i=l,j;zprintfinput a:\n;scanf%d,a;printfHinput n:\n;scanf%d,n;temp=a;whilei=n{sum+=a;a=a*10+temp;i++;}printfsum=%d\n,,sum;第六单元
1、P1271用一个数组存放10个学生的年龄,年龄由用户输入,然后分别按照正序和反序显示ttinclude stdio.hint main int a
[10],i;printf〃请输入10个学生的年龄:〃;for i=0;i10;i++scanf%d〃,a[i];printf〃正序输出的结果\n〃;for i=0;i10;i++printf〃%d〃,a[i];printf〃逆序输出的结果\n〃;for i=9;i=0;i--printf〃%d〃,a[i];return0;}2用选择法对10个整数进行由大到小排序选择排序的思路10个元素a
[0]到a
[9],将a
[0]依次与其余9个元素进行比较,若a
[0]比其它元素都大,则不进行交换;若a[lFa
[9]中有一个以上比行交大,则用最大的一个和a
[0]交换,此时,a
[0]中存放了10个数中的最大值依次类推,将与a[2Fa
[9]比较,将剩下的9个数中最大的与a[l]交换,此时a[l]中存放的是10个数中第二大的值依次类推,共进行9轮比较,a[0Fa
[9]就按由大到小顺序存放了程序代码ttinclude stdio.hint main int a
[10],i,j,k,temp;printf〃请输入10个整数〃;for i=0;i10;i++scanfa[i];for i=0;i8;i++k=i;forj=i+l;j9;j++if a[j]a[k]k二j;temp=a[i];a[i]=a[k];a[k]=temp;printf〃\n降序排列后的结果\n〃;for i=0;i10;i++printf〃%4d〃,a[i];return0;}
2、P1311编写程序,实现读取学生的学号和英语成绩信息如表6-2所示,并输出表6-2学生的学号和英语成绩学号12345678910成绩81659091578065708960案例分析定义一个二维数组用于存放学生的学号和成绩信息为实现信息的读取,使用双重循环,在内循环中读取一个同学的学号和成绩,外循环中依次读取每个同学的信息程序代码ttinclude stdio.h ttdefineN10int mainint score
[2][N];int i,j;printf〃请依次输入%d个学生的学号和成绩:\n〃,N;for i=0;iN;i++{scanf〃%d〃,score
[0][i];scanf〃%d〃,score[l][i];printf〃学生信息如下\n〃;printf〃学号成绩\n〃;fori=0;iN;i++forj=0;j2;j++printf z,%d〃,score[j][i];printf〃\n〃;Return0;P1312根据上题成绩库中的成绩,查找英语成绩为90的学生的学号,并输出ttinclude stdio.h ttdefineN10int mainintscore
[2][N];int i,j;printf〃请依次输入%1个学生的学号和成绩:\n〃,N;for i=0;iN;i++scanf〃%d〃,score
[0][i];scanf〃%d〃,score[l][i];fori=0;iN;i++ifscore[l][i]==90printf%d号学生的成绩为90分〃,score
[0][i];return0;}
3、P140输入两个字符串strl和str2,比较后将较大的字符串存放在strl中,将较小的存放在str2中,并输出strl和str2o程序代码#include,zstring.h〃ttinclude〃stdio.h〃int mainint k;static charstl
[15],st2
[15],st3
[15];printf z,input twostring:\nz,;gets stl;gets st2;k=strcmp stl,st2;ifk0strcpy st3,stl;strcpystl,st2;strcpy st2,st3;printf z/%s\n%sz/,stl,st2;return0;第七单元pl24定义一个有参且有返回值函数,实现两个整数的乘法运算功能int mulint int b{returna*b;pl27#include stdio.h voidsumint a,int bprintfn%d\nn,a+b-2;}int main{int i;for i=0;i5;i++sumi,3;printfn\nn;return0;程序的运行结果是___________________12345opl29#include stdio.h intfun int x,int y{if x!=y returnx+y/2;else returnx;int main{int a=4,b=5;printfn%d\nn,funa b;zreturn0;程序的运行结果是一___________________pl31#include stdio.h voidfint b[]{int i;for i=2;i6;i++b[i]*=2;}int main{inta
[10]={l,2,3,4,5,6,7,8,9,10},i;f a;for i=0;i10;i++printfH a[i];return0;r程序的运行结果是1,2,6,8,10,12,7,8,9,10P132#include stdio.h intfint xreturnx*2;}int mainintn=l,m;m=f fn;printfn%d\nn,m;return0;程序的运行结果是以_______pl34#include stdio.h intf int x{int y;if x==0||x==1return3;y=x*x-f x-2;return y;int main{int z;z=f3;printfn%d\nn,z;return0;}程序的运行结果是_________o
2.使用函数递归调用计算猴子吃桃子的问题一群猴子摘了一堆桃子,它们每天都吃当前桃子的一半且再多吃一个,到了第10天就只余一个桃子计算这群猴子共摘了多少个桃子#includestdio.h intSumPeachint dayif day==10return1;}return2*SumPeachday+1+2;int mainint total=SumPeach1;第一天猴子摘了%个桃子,printfd total;return0;pl37♦include stdio.h int main1=1int rj=3;printfH%d n,i++;z{int i=0;i+=j*2;%;printf7d,%d,,i,j;printf%d%d\nn,i,jreturn0;z程序的运行结果是1,6,3,2,3第八单元
1、分析下面的程序代码,写出程序的运行结果#include stdio.h int main;;mt1/*q p=iq=j;i=5;j=9;,茗,printf\n%ci,%d,%d,%d”i,j,*p,*q;printf”\n d,%d,%d,Zd i,j,p,q;return0;答案:5,9,5,92293308,2293304,2293308,2293304说明运行结果第二行数据随机生成,第
一、三个数相同,第
二、四个数相同
2、分析下面的程序,写出运行结果,#include stdio.h int mainint a[]={1,2,3},*p,i;p=a;fori=0;i3;i++,printfn\n%d%d%d%d”a[i],p[i],*p+i,*a+i;return0;}堂.M
1111222233333、分别通过字符数组名的地址方法和字符型指针的方法连接两个字符串I love和China”字符数组名的地址方法#includestdio.h#includestring.hint mainchar strl
[20]=nhellon,str2
[10]=n world;inti=0,j;j=strlenstrl;while*str2+i!=,\0,*strl+j=*str2+i;i++;j++;*strl+j尸\0;putsstrl;return0;字符型指针的方法#includestdio.h#includestring.hint maincharstrl
[20]=nhelloM,str2
[10]=n world”,*p,*q;p=strl+strlenstrl;q=str2;while*q*p=*q;p++;q++;*p=\0;putsstrl;return0;
4、写一个函数,实现两个字符串的比较即自己写一个strcmp函数strcmpsl,s2\如果sl=s2,返回0;如果sl^s2,返回它们二者第一个不同字符的ASCII码差值如“Boy”与“Bad”,第二个字母不同,3与宜的差为113-97=14\如果sls2,则输出正值;如果sls2,则输出负值#includestdio.hint strcmpchar*p,char*qwhile*p*q第一单元1用Dev C++编译环境运行C语言程序一般需要几步?编辑将C语言源程序文件*.c以纯文本文件形式保存在计算机的磁盘上编译将编辑好的源程序文件“礼c”,翻译成二进制目标代码文件“*.obj”编译程序对源程序逐句检查语法,直至排除所有语法和语义错误连接将编译生成的各个目标程序模块和系统或第三方提供的库函数连接在一起,生成可以脱离开发环境、直接在操作系统下运行的可执行文件“*.exe”运行程序2C语言程序的结构主要有几部分C语言程序包括预处理命令和函数,其中函数部分必须有一个主函数mainC语言的函数体中又分为两部分,一部分为说明部分,另一部分为执行部分说明部分是指变量的类型说明执行语句部分用以完成程序的功能{if*p==*q{p++;q++;}elsereturn*p-*q;return*p-*q;int maincharstrl
[50],str2
[50];printfnEnter twostrings\nn;getsstrl;getsstr2;printfn%dH,strcmpstr1,str2;
5.写出以下程序的运行结果区ttinclude stdio.h intmain inti,x
[3]
[3]={9,8,7,6,5,4,3,2,l},*p=x[l]
[1];for i=0;i4;i+=2printfn%dn p[i];A
6.输入3个字符串,按从小到大的顺序输出#include string.hint maininti;charstr
[3]
[30],*p
[3],*temp;printfinput3strings:\n;fori=0;i3;i++getsstr[i];P[i]=str[i];ifstrcmpp[O],p[l]O{temp=p[O];p[O]=p[l];p[l]=temp;}ifstrcmpp[l],p
[2]0{temp=p[l];p[l]=p
[2];p
[2]=temp;}ifstrcmpp[O],p[l]O{temp=p[O];p[O]=p[l];p[l]=temp;}printf“Aft:erscrt:\n”;printf”%s%s,%s\n“,p
[0],p[l],p
[2];第九单元pl68定义一个结构体类型描述日期信息,该信息的成员由年、月、日组成struct dateint year;int month;int day;;pl72ttinclude stdio.h#include string.h structSchar name
[10];;int mainstructS si,s2;strcpysi.name,”XXX”;strcpys
2.name,;si=s2;printf H%s\nn,si.name;return0;程序运行结果是=__________________.
2、从键盘输入员工的信息包括姓名,性别和出生日期,计算员工的年龄,并输出所有的信息#include stdio.hstruct date{int year;int month;int day;;//定义出生日期为结构体类型struct worker{char name
[20];char sex
[5];struct datebirthday;;”请输入员工信息姓名・intmainstruct workerwl;printf\n”;scanf”%s”,wl name;”请输入员工信息性别printf\n”;scanfn%s,wl.sex;”请输入员工信息出生日期年、月、日;printf\n”scanfn%d%d%dn wl.birthday.day;zz员工的信息为:printf\nn;姓名:printf%s\n”,wl,name;”性别%,printf s\n”wl.sex;年龄printf%d\nH,2020-wl.birthday.year;return0;pl
741.用键盘输入3个员工的信息,包括姓名,性别和出生日期,计算员工的年龄,并输出每个员工的所有信息#include stdio.h struct date{int year;int month;int day;;//定义出生日期为结构体类型struct worker{char name
[20];char sex
[5];structdatebirthday;;intmainstruct workerwl
[3];for inti=0;i=2;i++”请输入第%个员工信息姓名,printf d\n”i+1;scanf n%s,wl[i].name;printf”请输入第%5个员工信息性SU\n”,i+1;scanfn%sH wl[i].sex;z”请输入第之个员工信息出生日期年、月、日,printf d\n”i+l;;scanf%d%d%d,wl[i].birthday.year,wl[i].birthday.month,wl[i].birthday.dayfor inti=0;i=2;i++第名个员工的信息为printf d\nn i+1;z姓名:printf%s\nH wl[i].name;z性别%printf s\n”,wl[i].sex;年龄printf%d\n”,2020-wl[i].birthday.year;return0;}pl75#include stdio.hstruct tt{int x;struct tt*y;}s
[3]={1,0,2,0,3,0};intmain{struct tt*p=s+l;p-y=s;%printf”d,”,p-x;p=p-y;%,〉printf d\n p-x;return0;}程序运行结果是_________________________2,1pl77定义一个复数结构体类型,编写程序实现两个复数的加法运算分析1复数是由实部和虚部组成,由此可知,实部和虚部就是组成复数这个结构体类型的“成员”struct comp{实部虚部};float a;//float b;//2定义函数实现复数的加法运算,函数的返回值类型是结构体类型,函数的参数是结构体指针实部虚部;#include stdio.h struct compfloat a;//float b;//struct compcompaddstruct comp*cl,struct comp*c2struct compr;r.a=*cl.a+*c
2.a;r.b=*cl.b+*c
2.b;return r;}intmainstruct compcl={2,3};structcompc2={4,5};struct compr=compaddcl,c2;printfH%f%fr.a,r.b;return0;zpl80假定已建立以下链表结构,且指针p和q已指向下图所示的结点:data nexthead---------------►a------------------------►b-------------------------►c-fp fq则以下选项中可将q所指结点从链表中删除的语句组是AA p-next=q-next;B p=q-next;C p=q;D*p.next=*q.next;第二单元
1.已知圆形半径为
2.5,求周长和面积#include stdio.h ttdefinePI
3.14intmainfloat r-
2.5,c,s;c=PI*r*r;s=2*PI*r;printf〃周长:%.2f,面积:%.2f\n〃,c,s;return0;
2.求三个数
5、8和9的平均值,结果保留小数部分#include stdio.h intmain{floatave=5+8+9/
3.0;printfave;
3.将大写字母转换为小写字母输出printf〃%c〃,Q+32;
4.写出下列程序的运行结果hello worldCBttinclude stdio.h intmain{char chl=e,ch2=*1*,ch3=1o1;char ch4=,\101,ch5=,\102,ch6=,\103,;z zprintfnh%cl%c%c\tworld\nn chi,ch2,ch3;zprintf,,%c%c\b\b%c\n,ch4,ch5ch6;return0;z
5.编程计算y=5%2+4x-6的值其中%=5ttinclude stdio.h#include math.h intmain|float xl,x2;xl=-4+sqrt4*4-4*5*-6/2*5;x2=-4-sqrt4*4-4*5*-6/2*5;printf〃xl=%.2f,x2=%.2f\n〃,xl,x2;
6..写出下列程序的输出结果1#include stdio.h intmainint x=5y=15;zx+=x;%,printf d\n”x;x*=4+3;printfH%d\nn x;fx%=y%2;printfn%d\nn x;return0;f}运行结果107002#include stdio.h intmain inta,b,c d;za=8;b=10;c=a++;d=++b;%,printfd,%d,%d,%d\n”a,b,c,d;return0;运行结果9,11,8,n3ttinclude stdio.h intmain intm,n;float x=
5.8;m=x;n=intx;printfx=%f,m=%d,n=^d\n,x,m,n;return0;运行结果x=5,800000,m=5,n=5第三单元
1、P54编写程序实现从键盘输入一个字符,输出这个字符及其前一个和后一个字符程序代码ttinclude stdio.h〃int mainchar ch,chi,ch2;printf〃输入一个字母:\n〃;ch=getchar;chi=ch-l;ch2=ch+l;putcharchi;putcharch;putcharch2;return0;
2、P55分析程序,写结果C J
3、P60练一练15,3,cAe=
1.2,f=
3.
44、P61练一练2鸡兔同笼程序代码ttinclude stdio.hint mainintM,N,x,y;/*x表示鸡数,baiy表示兔数*/printf“请输入总头数和总脚数”;scanf,,%d%d,M N;,x=4*M-N/2;y=N-2*M/2;ifx+y==M2*x+4*y==NprintfH%d%d,x,y;elseprintfCO;return0;}
5、P65练一练1a=9,b=
91.234000,
1.2340006+
0001.234000,
1.23e+OO0a,97,141,611234567,4553207,12d68795533,272455,1752d,95533hel练一练2编写程序,输入一个3位整数,输出各位数字的和例如,若输入345,则输出12o程序代码#include stdio.hint maininti,ge,shi,bai;printf“请输入一个三位整数;scanf”%d”,i;bai=i/100;shi=i/10%10;ge=i%10;printf各位数字之和为%d bai+shi+ge;/return0;第四单元p
601.整型变量X为奇数的关系表达式为x%2!=0O
2.判断变量x和y不相等的关系表达式为x!=y.p
611.判断字符变量ch为大写字母的逻辑表达式是一ch=Ach+N°
2.与数学表达式xyz对应的C语言表达式是x=yy〉=z
3.a是数值类型,表达式a==l||a!=l的值是p64输入三个整数,输出三个数中的最大数,将下列程序补充完整#includestdio.h intmaininta,b c,max;rscanfH%d%d%dn,a,b,c;max=a;____________ifbmax max=b;ifcmax;_______________max=最大数是,printf%d”max;return0;}p66例
4.8中使用单分支if语句实现了输出两个数中最大数的功能,现在使用双分支if_else语句实现该功能#includestdio.h intmaininta,b;scanf%d%dz,,a,b;ifba、最大数是%〃print-d,b;else最大数是〃,printf%d a;return0;}p69#includestdio.h intmain x=l,int y=0;iflx y++;,程序的运行结果else ify==0if xy+=2;else y+=3;printf”y=%d y;return0;是______________y=
24.编写代码,判断键盘输入的字符是数字、小写字符或者是大写字符分析首先判断输入的字符是否是数字,如果条件成立,则输出信息,否则继续判断输入的字符是否是小写字符;如果条件不成立,继续判断输入的字符是否是大写字符#includestdio.h intmaincharc;”输入的字符是数字字符c=getchar;if c=,0,c=f91printf\n”;else ifc=1a1“输入的字符是小写字母字符c=*z*printf\n”;else ifc=*Afc=1Z1输入的字符是大写字母字符printf\n;else”输入的字符是其他字符printf\M;return0;
1.设定x的值为2,表达式x%2=0l:0的值为1o
2.与下列if语句功能相同的表达式是k=abl:0p7O#includestdio.h intmain{intx=l,a=0b=0;switchx{case0:b++;case1:a++;zcase2:a++;b++;,printfM%d%d”a,b;return0;z程序的运行结果是工,____________2op72ttinclude stdio.h intmain{intx=l,y=0a=0,b=0;switchx{case1:switchy1{case0:a++;break;case1:b++;break;case2:a++;b++;break;case3:a++;b++;,}printfH%d,%d”a,b;return0;程序的运行结果是______________2,1o
2.编写代码实现一个简单的计算器功能用户输入两个数和一个运算符,根据用户输入的运算符,执行相应的加、减、乘、除运算,输出运算结果分析定义三个变量numl、num
2、result分别存储输入的两个数和输出的运算结果,定义变量ch存储运算符首先,输入numl,num2和ch;然后根据ch的值选择计算种类,执行运算,显然这是一个多条件选择结构;最后,输出计算结果resultinput number35input operaor+
3.000000+
5.000000=
8.000000#includestdio.h intmainint numl,num2,result;char op;printf inputnumber\nn;%,scanf”d%d numl,num2;printf inputoperator\nn;;//处理回车键op=getchar op=getchar;switchopcase:result=numl+num2;break;case:result=numl-num2;break;case*,:result=numl*num2;break;case1:result=numl/num2;break;请输入+-*\运算符;default:printf\n”},printf%d%c%d=%d\n”numl,op,num2,result;return0;。
个人认证
优秀文档
获得点赞 0