2026年沈阳工业大学工程学院公共课《C语言》科目期末试卷A(有答案)_第1页
2026年沈阳工业大学工程学院公共课《C语言》科目期末试卷A(有答案)_第2页
2026年沈阳工业大学工程学院公共课《C语言》科目期末试卷A(有答案)_第3页
2026年沈阳工业大学工程学院公共课《C语言》科目期末试卷A(有答案)_第4页
2026年沈阳工业大学工程学院公共课《C语言》科目期末试卷A(有答案)_第5页
已阅读5页,还剩14页未读, 继续免费阅读

下载本文档

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

文档简介

2026年沈阳工业大学工程学院公共课《C语言》科目期末试卷A(有答案)一、填空题1、与表达式x^=y-2等价的另一书写形式是_______。2、结构化程序由________、________、________3种基本结构组成。3、一个C语言源程序由若干函数组成,其中至少应含有一个________4、若x和n均是int型变量,且x和n的初值均为5,则执行表达式x+=n++后x的值为_______,n的值为_______。5、若采用十进制数的表示形式,则077为_______,0111为_______,0xab为_______。6、以下程序段通过指针变量q,但不移动q,将如图所示连续动态存储单元的值,从第一个元素起依次输出到终端屏幕。请填空。(假设程序段中的所有变量均已正确说明。)for(k=0;k<10;k++)printf("%d,",_______);printf("\n");7、执行下面程序段后,k的值是_______。k=1;n=263;do{k*=n%10;n/=10;}while(n);8、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。structs{chardata;_______}node;9、已有定义inta;floatb,x;charcl,c2;为使a=3、b=6.5、x=12.6、cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为_______。10、若有定义floata[3][5];则a数组所含数组元素个数是_______,a数组所占的字节数是_______。二、选择题11、若有代数式3acbc,则不正确的C语言表达式是(A.a/b/c*e*3B.3*a*e/b/cC.3*a*e/b*cD.a*e/c/b*312、下面4个选项中,是正确的数值常量或字符常量的选项是()13、以下C程序的运行结果是()。(注:口表示空格)#include<stdio.h>intmain(){longy=23456;printf("y=%3x\n",y);printf("y=%8x\n",y);printf("y=%#8x\n",y);return0;}A.y=5ba0B.y=囗囗囗5ba0y=囗囗囗囗5ba0y=囗囗囗囗囗囗05ba0y=囗囗0x5ba0y=囗囗0x5ba0C)y=5ba0D.y=5ba0y=5ba0y=囗囗囗囗5ba0y=0x5ba0y=####5ba014、设有说明:doubley=0.5,z=1.5;intx=10;则能够正确使用C语言库函数的赋值语句是()。A.z=exp(y)+fabs(x);B.y=log10(y)+pow(y);C.z=sqrt(y-z);D.x=(int)(atan2((double)x,y)+exp(y-0.2));15、下面程序段中有错误的行号是(每行代码前面的数字表示行号)。1inta[3]={1};2inti;3scanf("%d".8a);4for(i=1;i<3;i++)a[0]=a[0]+a[i]:5printf("a[0]=%d\n",a[0]);A)1B)4C)5D)316、一个C语言程序由()。A.一个主程序和若干子程序组成B.函数组成C.若干过程组成D.若干子程序组成17、语句while(!E);中的表达式!E等价于()。A.E==0B.E!=1C.E!=0D.E==118、在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是()A.externB.registerC.autoD.static19、下面程序段的运行结果是()。chars[6];s="abcd',printf("\"%s\"\n",s);A."abcd"B."abcd"C.\Wabcd\"D.编译出错20、有如下语句inta=10,b=20,*p1,*p2;p1=&a;p2=&b;如图所示;若要实现图所示的存储结构,可选用的赋值语句是()A.*p1=*p2;B.p1=p2;C.p1=*p2;D.*p1=p2;21、以下程序的运行结果是()。#include<stdio.h>intfun(intn){intm=0,f=-1,i;for(i=1;i<=n;i++){m=m+i*f;f=-f;}returnm;intmain(){printf("m=%d\n",fun(10));return(0);A.m=5B.m=-6C.m=6D.m=-522、定义如下变量和数组:intk;inta[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是()。for(k=0;k<3;k++)printf("%d",a[k][2-k]);A)357B)369C)159D)14723、下面程序的功能是从键盘输入一行字符,统计其中有多少个单词,单词之间用空格分隔。请选择填空。()#include<stdio.h>intmain(){chars[80],c1,c2='';inti=0,num=0;gets(s);while(s[i]!='\o'){c1=s[i];if(i==0)c2='';elsec2=s[i-1];if(【】)num++;i++;printf("Thereare%dwords.\n",num);return0;}A.c1==′′&&c2==''B.cl!=''&&c2==''C.c1==''&&c2!=''D.cl!=''&&c2!=''24、若变量都已正确定义,则以下程序段的输出是()。a=10;b=50;c=30;if(a>B.a=b,b=c;c=a;printf("a=%db=%dc=%d\n".a,b,C.;A.a=10b=30c=10B.a=10b=50c=10C.a=50b=30c=10D.a=50b=30c=5025、下面程序的运行结果是()。#include<stdio.h>intmain(){inti,j,a=0;for(i=0;i<2;i++){for(j=0;j<4;j++){if(j%2)break;a++;}a++;}printf("%d\n",A.:return0;}A.4B.5C.6D.7三、读程序填空26、以下程序的输出结果是_______。#include<stdio.h>intmain(){intx=10;floatpi=3.1416;printf("(1)%d\n",x);printf("(2)%6d\n",x);printf("(3)%f\n",56.1);printf("(4)%14fNn",pi);printf("(5)%e\n",568.1);printf("(6)%14e\n",pi);printf("(7)%g\n",pi);printf("(8)%12g\n",pi):return0;}27、已知字母A的ASCII码值为65。以下程序的输出结果是_______。#include<stdio.h>intmain(){chara,b;a='A'+'4'-'3';b='A'+'6'-2';printf("a=%d,b=%c\n",a,b);return0;}28、以下程序的运行结果是_______。#include<stdio.h>intmain(){intx,y=-2,z=0;if((z=y)<0)x=4;elseif(y==0)x=5;elsex=6;printf("\t%d\t%d\n",x,z);if(z=(y==0))x=5;x=4;printf("\t%d\t%d\n",x,z);if(x=z=y)x=4;printf("\t%d\t%d\n",x,z);return0;}29、某服装店经营套服且单件出售。若一次购买不少于50套,则每套80元;若不足50套,则每套90元;只买上衣每件60元;只买裤子每条45元。以下程序的功能是读入所买上衣c和裤子t的件数,计算应付款数m。请填空。#include<stdio.h>intmain(){intc,t,m;printf("inputthenumberofcoatandtrousersyouwanttobuy:\n");scanf("%d%d",&c,&t);if(_______)if(c>=50)m=c*80;elsem=c*90;elseif(_______)if(t>=50)m=t*80+(c-t)*60;elsem=t*90+(c-t)*60;elseif(_______)m=c*80+(t-c)*45;elsem=c*90+(t-c)*45;printf("%d",m);return0}30、下面程序的功能是求1111的个、十、百位上的数字之和。请填空。#include<stdio.h>intmain(){inti,s=1,m=0;for(i=1;i<=11;i++)s=s*11%1000;do{m+=_______;s=_______;}while(s);printf("m=%d\n",m);return0;}31、以下函数fun的功能是:将输入的一个偶数写成两个素数之和的形式。例如,若输入数值8,则输出8=3+5。请填空。#include<stdio.h>#include<math.h>vaidfun(inta){intb,c,d;for(b=3;b<=a/2;b=_______){for(c=2;c<=sqrt(b);c++)if(b%c==0)break;if(c>sqrt(b))d=_______;elsebreak;for(c=2;c<=sqrt(d);c++)if(d%c==0)break;if(c>sqrt(d))printf("%d=%d+%d\n",a,b,d);}}intmain(){inta;printf("\ninputa:\n");scanf("%d",&&a);fun(a);return(0);}32、当运行以下程序时,从键盘输入girl<回车>boy<回车>则下面程序的运行结果是_______。#include<stdio.h>#include<string.h>intmain(){chara[2][80],t;inti,j,m,n,l,max;for(i=0;i<=1;i++)gets(a[i]);t=a[0][0];for(i=0;i<=1;i++){1=strlen(a[i]);for(j=0;j<=1;j++)if(a[i][j]>t){max=a[i][j];m=i;n=j;}printf("%c%d%d\n",max,m,n);return0;}33、下面程序的功能是判断输入的字符串是否是“回文”(顺读和倒读都一样的字符串称为“回文”,如level)。请填空。#include<stdio.h>#include<string.h>intmain(){chars[81],*pl,*p2;intn;gets(s);n=strlen(s);pl=s;p2=_______;while(_______){if(*pl!=*p2)break;else{pl++;[3];}if(pl<p2)printf("No\n");elseprintf("Yes\n");return(0);}四、编程题34、以下函数fun的功能是从3个红球(x)、5个白球(y)、6个黑球(z)中任意取出8个,且其中必须要有红球和白球。请编写函数,输出所有方案。#include<stdio.h>intfun(intx,inty,intz){inti,j,k,sum=0;(请在此处编写函数)}intmain(){intsum,x=3,y=5,z=6;sum=fun(x,y,z);printf("sum=%4d\n",sum);return(0);}35、函数fun的功能是:判断输入的3个整型值能否组成三角形,组成的是等边三角形,还是等腰三角形。请在函数中填写正确的内容。#include<stdio.h>voidfun(inta,intb,intc);intmain(){inta,b,c;printf("\ninputa,b,c:\n");scanf("%d%d%d",&a,&b,&c);fun(a,b,c);return(0);}voidfun(inta,intb,intc){if(a+b>c&&b+c>a8.&a+c>b)(请在此处填写正确的内容)Elseprintf("不能组成三角形");}

参考答案一、填空题1、x=xy-2或x=x*(y-2)2、【1】顺序结构【2】选择结构【3】循环结构3、主函数(或main函数)4、【1】10【2】65、

温馨提示

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

评论

0/150

提交评论