高级语言程序设计(嵌入式C)智慧树知到期末考试答案章节答案2024年天水师范学院_第1页
高级语言程序设计(嵌入式C)智慧树知到期末考试答案章节答案2024年天水师范学院_第2页
高级语言程序设计(嵌入式C)智慧树知到期末考试答案章节答案2024年天水师范学院_第3页
高级语言程序设计(嵌入式C)智慧树知到期末考试答案章节答案2024年天水师范学院_第4页
免费预览已结束,剩余6页可下载查看

下载本文档

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

文档简介

高级语言程序设计(嵌入式C)智慧树知到期末考试答案+章节答案2024年天水师范学院C语言中无逻辑变量,也无逻辑表达式。()

答案:错putchar()函数的作用是输出一串字符。()

答案:错有a=3,b=5。执行a=b,b=a后,使a的值为5,b的值为3。()

答案:错简单的C程序由函数组成。()

答案:错在C的函数中,最好使用全局变量。()

答案:错staticcharc[]={'a','','b','o','o','k','\0'};与staticcharc[]={'a','','b','o','o','k'};等价。()

答案:错函数调用可以作为一个函数的形参。()

答案:错将一个数左移一位,相当于该数乘以2;右移一位相当于除以2;()

答案:对下列程序段执行循环二次x=-1;do{x=x*x;}while(!x);()

答案:错函数说明指的是在程序中设定一个函数模块。()

答案:错所有函数定义都是并行的,相互独立的。()

答案:对在赋值表达式中,赋值号左边既可以是变量也可以是任意表达式。()

答案:错使用scanf()函数,在输入数据时,若遇非法输入则认为该数据输入结束。()

答案:对形参可以是常量、变量或表达式。()

答案:错C允许对数组的大小作动态定义,即可用变量定义数组的大小。()

答案:错运行下面程序时,若从键盘输入数据为"6,5,7<CR>",则输出结果是#include<stdio.h>voidmain(){inta,b,c;scanf("%d,%d,%d",&a,&b,&c);if(a>b)if(a>c)printf("%d\n",a);elseprintf("%d\n",c);elseif(b>c)printf("%d\n",b);elseprintf("%d\n",c);}()

答案:7已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句C2=’A’+’6’-‘3’;后c2中的值是()。

答案:D在C语言中,每个语句必须以()结束。

答案:分号在以下一组运算符中,优先级最低的运算符是()。

答案:=(

)

,可以不进行函数类型说明。

()

答案:全部都是运行下面程序时,从键盘输入"2.0<CR>",则输出结果是#include<stdio.h>voidmain(){floata,b;scanf("%f",&a);if(a<0.0)b=0.0;elseif((a<0.5)&&(a!=2.0))b=1.0/(a+2.0);elseif(a<10.0)b=1.0/2;elseb=10.0;printf("%f\n",b);}()

答案:0.500000阅读下面的程序#include<stdio.h>voidmain(){charch;scanf("%3c",&ch);printf("%c",ch);}如果从键盘上输入abc<回车>则程序的运行结果是()

答案:aprintf("f=%3.2f%%",3.478);的输出结果是()。

答案:f=3.48%函数调用可以在()

答案:全部都是执行下列程序段后的输出结果是intx=1,y=1,z=1;x+=y+=z;printf("%d\n",x<y?y:x);()

答案:3下面程序的输出结果是#include<stdio.h>voidmain(){inta=5,b=3;floatx=3.14,y=6.5;printf("%d,%d\n",a+b!=a-b,x<=(y-=6.1));}()

答案:1,0程序段intx=3,a=1;switch(x){case4:a++;case3:a++;case2:a++;case1:a++;}printf("%d",a);的输出结果是()。

答案:4若有定义intx=3,y=2和floata=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是()

答案:1下列格式符中,哪一个可以用于以八进制形式输出整数()。

答案:%o执行下面程序后,运行结果是#include<stdio.h>voidmain(){intx=41,y=1;if(x%3==0&&x%7==0){y+=x;printf("y=%d\n",y);}else{y=x;printf("y=%d",y);}}()

答案:y=41C语言中的变量名只能由字母,数字和下划线三种字符组成,且第一个字符()

答案:必须为字母或下划线C语言总是从()函数开始执行。()

答案:main若有以下说明和语句,则输出结果是哪一项。(strlen(s)为求字符串s的长度的函数)chars[12]="abook!";printf("%d",strlen(s));()

答案:7下列不正确的转义字符是()。

答案:074执行下面程序段后,输出结果是inta;intb=65536;a=b;printf("%d\n",a);()

答案:65536被调函数返回给主调函数的值称为()。

答案:返回值若已定义x和y为double类型,表达式x=1,则y=x+3/2的值是()。

答案:2.0设有以下语句:intx=10;x+=3+x%(3),则x的值是.()

答案:14有以下程序段,其输出结果是:intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;}case2:a++;b++;break;case3:a++;b++;}printf("a=%d,b=%d\n",a,b);()

答案:a=2,b=1在C语言中,有关函数的说法,以下正确的是()。

答案:函数可嵌套定义,也可嵌套调用有以下程序#include"stdio.h"inta=2;intf(int*A){return(*A)++;}main(){ints=0;{inta=5;s+=f(&a);}s+=f(&a);printf(“%d\n”,s);}执行后输出结果是()

答案:7以下选项中,()是不正确的C语言字符型常量。

答案:"a"下面的程序中哪一行有错误。#include<stdio.h>main(){floatarray[5]={0.0};//第A行inti;for(i=0;i<5;i++)scanf("%f",&array[i]);for(i=1;i<5;i++)array[0]=array[0]+array[i];//第B行printf("%f\n",array[0]);//第C行}()

答案:没有设整型变量i值为2,表达式(++i)+(++i)的结果是()。

答案:8假定所有变量均已正确定义,下列程序段运行后x的值是。a=b=c=0,x=35;if(!a)x--;elseif(b);if(c)x=3;elsex=4;()

答案:4有以下程序段inti=5;do{if(i%3==1)if(i%5==2){printf("*%d",i);break;}i++;}while(i!=0);其运行结果是()

答案:*7阅读下面的程序#include<stdio.h>voidmain(){inti,j;scanf("%3d%2d",&i,&j);printf("i=%d,j=%d\n",i,j);}如果从键盘上输入1234567<回车>,则程序的运行结果是()

答案:i=123,j=45下面程序的输出结果是#include<stdio.h>voidmain(){inta=-1,b=4,k;k=(++a<=0)&&(b--<=0);printf("%d,%d,%d\n",k,a,b);}()

答案:0,0,3处理中断事件的专用程序叫做()。

答案:中断服务程序按键抖动是指()。

答案:按键时在接触触点发生弹跳,从而出现连接通断切换的现象轮询算法其实是一种循环结构嵌套选择结构。()

答案:对嵌入式系统周期性检查某些功能部件状态的方法只有两种,分别是()。

答案:轮询和中断嵌入式系统的配套控制软件使用while(1)的原因在于()。

答案:系统需要反复扫描特定程序以下运算符不属于位运算符的是()。

答案:逻辑或利用位运算进行指定二进制位设置的原理是通过加法来实现设定。()

答案:错C语言不支持二进制书写,通常写成十六进制格式。()

答案:对嵌入式系统的中断机制,实际上就是由某一硬件或软件特定事件触发的子函数执行过程。()

答案:对延时程序的缺点在于()。

答案:定时不够准确,受制于CPU执行时间片任务的调度等因素累乘算法的核心内容是:构造形如“Mul=Mul+New”的累加算式,此式必须在循环中才能被反复执行,从而实现累乘功能。()

答案:错穷举算法也称为“枚举法”,即将可能出现的每一种情况一一测试,判断是否满足条件,一般采用循环来实现。()

答案:对辗转相除算法的核心是:求两个正整数为a和b的最大公约数,从a和b的除法开始,当余数不为0时,反复用上一次的除数与余数相除,直到余数为0为止。()

答案:对两个变量交换数据算法的要领是借助第三方变量作为中转“场地”。()

答案:对常用的数据查找算法为:①顺序查找(即线性查找)②()(即二分法)。

答案:折半查找素数又称质数,即“只能被1、2和自身整除的大于1的自然数”。()

答案:错整数各数位拆数算法的核心是:利用“任何正整数整除10的余数即得该数个位上的数字”的特点,用循环从低位到高位依次取出整数的每一数位上的数字。()

答案:对迭代算法的核心思想是把一个复杂的计算过程转化为简单过程的多次重复。每次重复都从前一次计算值的基础上递推出新值,并由新值代替旧值。()

答案:对数组元素的插入算法的核心是:利用循环将从数组末尾元素开始到插入位置的数组元素依次向前移动一个元素位置;再将待插入数据存入插入位置的数组元素。()

答案:错累加算法的关键在于,构造形如“Sum=Sum+N”的累加式,此式必须出现在循环中才能被反复执行,从而实现累加功能。()

答案:对若函数调用时参数为基本数据类型的变量(俗称简单变量),以下叙述正确的是()

答案:实参与其对应的形参分别占用不同的存储单元C语言中规定函数的返回值的类型是由()

答案:在定义该函数时所指定的类型所决定以下叙述中,不正确的是()

答案:在main函数体内定义的变量是全局变量在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是()

答案:单向值传递以下函数fun形参的类型是fun(floatx){floaty;y=3*x-4;returny;}()

答案:float设有如下定义:charaa[2][20]={"abcd","ABCD"};则以下说法中错误的是()

答案:aa[0][0]可以看作是一维数组名若函数调用时用数组名作为函数参数,以下叙述中,不正确的是()

答案:实参与其对应的形参分别占用不同的存储空间如果一个函数位于C程序文件的上部,在该函数体内说明语句后的复合语句中定义了一个变量,则该变量()

答案:为局部变量,只在该复合语句中有效请读程序:#include<stdio.h>f(intb[],intn){inti,r=0;for(i=0;i<=n;i++)r=r+b[i];returnr;}voidmain(){intx,a[]={2,3,4,5,6,7,8,9};x=f(a,3);printf("%d\n",x);}上面程序的输出结果是()

答案:14下面程序的输出是#include<stdio.h>intm=13;intfun2(intx,inty){intm=3;return(x*y-m);}voidmain(){inta=7,b=5;printf("%d\n",fun2(a,b)/m);}()

答案:2以下对C语言函数的有关描述中,正确的是()

答案:在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参设有数组定义:chararray[]="China";则数组array所占的存储空间为()

答案:6个字节有如下说明:inta[10]={0,1,2,3,4,5,6,7,8,9};则数值不为9的表达式是()

答案:a[8]调用函数时,当实参和形参都是简单变量时,它们之间数据传递的过程是()

答案:实参将其值传递给形参,调用结束时形参并不将其值回传给实参下面程序输出的结果是#include<stdio.h>voidmain(){inti,j,x=0;staticinta[6]={1,2,3,4,5,6};for(i=0,j=1;i<5;++i,j++)x+=a[i]*a[j];printf("%d\n",x);}()

答案:数组a中相邻各元素的乘积之和给出以下定义:charx[]="abcdefg";chary[]={'a','b','c','d','e','f','g'};则正确的叙述为()

答案:数组x的长度大于数组y的长度下述对C语言字符数组的描述中错误的是()

答案:可以在赋值语句中通过赋值运算符"="对字符数组整体赋值下列程序的输出结果是#include<stdio.h>voidmain(){charb[]="ABCDEFG";charp=0;while(p<7)putchar(b[p++]);putchar('\n');}()

答案:ABCDEFG定义如下变量和数组:inti;intx[4][4]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};则下面语句的输出结果是for(i=0;i<4;i++)printf("%3d",x[i][3-i]);()

答案:471013若希望下面的程序运行后输出45,程序空白处的正确选择是#include<stdio.h>voidmain(){inti,j=10,a[]={1,3,5,7,9,11,13,15};for(____________)j+=a[i];printf("%d\n",j);}()

答案:i=5;i>=1;--i要求下面的程序运行后,显示如下结果:21046152324785132则程序中的划线处应填入#include<stdio.h>voidmain(){inta[4][4]={________};inti,j;for(i=0;i<4;i++){for(j=0;j<4;j++)printf("%4d",a[i][j]);printf("\n");}}()

答案:{2,10,4,6},{1,5,2,3},{2,4,7,8},{5,1,3,2}以下程序的输出结果是#include<stdio.h>voidmain(){inti,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf("%d,",x[i][i]);printf("\n");}()

答案:1,5,9,若有以下说明:chars1[]={"tree"},s2[]={"flower"};,则以下对数组元素或数组的输出语句中,正确的是()

答案:puts(s1);puts(s2);如有定义语句inta[]={1,8,2,8,3,8,4,8,5,8};,则数组a的大小是()

答案:10报错信息调试中包括错误信息和警告信息在内。()

答案:对运行下面程序后,输出是#include<stdio.h>voidmain(){intk=-3;if(k<=0)printf("****\n");elseprintf(";#\n")}()

答案:有语法错误不能通过编译语句预设调试是IDE编程平台所提供的调试功能。()

答案:错函数内划分程序结构可分为:定义及初始化与数据输入块、数据计算块、输出及结果块。()

答案:对语句预设调试是一种语句级别的调试方法。()

答案:对执行下面程序的输出结果是#include<stdio.h>voidmain(){inta=5,b=0,c=0;if(a=a+b)printf("****\n");elseprintf(";#\n");}()

答案:输出****在调试状态下执行程序时,会在设置的最后一个断点处暂停。()

答案:错程序暂停在断点处时,无法知道各个变量的当前值。()

答案:错循环结构的程序无法使用单步调试。()

答案:错以程序编译层面划分程序的组成结构可分为:程序预编译块;主函数块;子函数块。()

答案:对执行下列程序后的输出结果是#include<stdio.h>voidmain(){intk=4,a=3,b=2,c=1;printf("%d\n",k<a?k:c<b?c:a);}()

答案:1若执行下面的程序从键盘上输入9,则输出结果是.#include<stdio.h>voidmain(){intn;scanf("%d",&n);if(n++<10)printf("%d\n",n);elseprintf("%d\n",n--);}()

答案:10以下程序输出结果是#include<stdio.h>voidmain(){intm=4;if(++m>5)printf("%d\n",m--);elseprintf("%d\n",--m);}()

答案:4有以下程序#include<stdio.h>voidmain(){inta,b,c=246;a=c/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}输出结果是()

答案:2,1下列程序执行后的输出结果是voidmain(){intx,y=1,z;if((z=y)<0)x=4;elseif(y==0)x=5;elsex=6;printf("%d,%d\n",x,y);}()

答案:6,1运行下面程序时,若从键盘输入数据为"123",则输出结果是#include"stdio.h"voidmain(){intnum,i,j,k,place;scanf("%d",&num);if(num>99)place=3;elseif(num>9)place=2;elseplace=1;i=num/100;j=(num-i*100)/10;k=(num-i*100-j*10);switch(place){case3:printf("%d%d%d\n",k,j,i);break;case2:printf("%d%d\n",k,j);break;case1:printf("%d\n",k);}}()

答案:321以下程序的输出结果是main(){inta=100;if(a>100)printf("%d\n",a>100);elseprintf("%d\n",a<=100);}()

答案:1有如下程序#include<s

温馨提示

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

评论

0/150

提交评论