Skip to content

Latest commit

 

History

History
264 lines (179 loc) · 4.34 KB

安衡达.md

File metadata and controls

264 lines (179 loc) · 4.34 KB

01

下列叙述中正确的是()。
A)程序设计就是编制程序
B 程序的测试必须由程序员自己去完成
C 程序经调试改错后还应进行再测试
D 程序经调试改错后不必进行再测试

02

下列关于栈的描述正确的是()。
A)在栈中只能插入元素而不能删除元素
B 在栈中只能删除元素而不能插入元素栈是特殊的线性表,只能在一端插入或删除元素
C 栈是特殊的线性表只能在一端插入或删除元素
D 栈是特殊的线性表,只能在一端插入元素而在另一端删除元素

03

以下叙述中错误的是()。
A) 语句必须以分号结束
B  复合语句在语法上被看作一条语句
C  空语句出现在任何位置都不会影响程序运行
D  赋值表达式末尾加分号就构成赋值语句

04

以下能正确定义且赋初值的语句是()。
A) int n1=n2=10;
B  char c=32;
C  float f=f+1.1;
D  double x=12.3E2.5;

05

5/20 [单选]
有以下程序段
int n,t=1,s=0; 
scanf("%d",&n);
do{s=s+t; t=t-2;} 
while (t!=n);
为使此程序段不陷入死循环,从键盘输入的数据应该是()。
A 任意正奇数
B 人员负偶数数
c 任意正偶数
D 任意负奇数

06

设变量已正确定义,则以下能正确计算f=n!的程序段是()。
A) f=0;for(i=1;i<=n;i++) f*=i;
B) f=1;for(i=1;i>=2;i--) f*=i;
C) f=1;for(i=n;i>1;i++)  f*=i;
D  f=1;for(i=n;i>=2;i--) f*=i;

07

有以下程序main(){
	int k=5,n=0; while(k>0)
    {switch(k) {
    default: break; 
    case 1:n+=k; 
    case 2:
    case 3: n+=k;}
    k--;}
    printf("%d\n",n);
}

程序运行后的输出结果是

08

设有定义:int n1=0,n2,*p=&n2,*q=&n1;,以下赋值语句中与n2=n1;语句等价的是()。
Α) *p=*q;
B   p=q;
C  *p=&n1;
D   p=*q; 	

09

设函数 fun 的定义形式为void fun(char ch, float x) {..}则以下对函数fun的调用语句中,正确的是()。
A    fun("abc",3.0);
B) t=fun('D',16.5);
C    fun('65',2.8);
D    fun(32,32);

10

#include "stdio.h"
struct STU{
    int num;
    float TotalScore;
};
void f(struct STU p){
    struct STU s[2] = {{ 20044,550 } , { 20045,537 }};
    p.num = s[1].num;
    p.TotalScore = s[1].TotalScore;
}
int main(void){
    struct STU s[2] = { {20041,703},{20042,580} };
    f(s[0]);
    printf("%d %3.0f\n",s[0].num,s[0].TotalScore);
}
程序运行后的输出结果是()。

11

中断是嵌入式系统中重要的组成部分,这导致了很多编译开发商提供一种扩展一让标准C支持中断。具代表事实是,产生了一个新的关键字interrupt。下面的代码就使用了interrupt 关键字去定义了一个中断服务子程序(ISR),请评论一下这段代码的结果。
interrupt double compute_area (double radius){
	double area = Pl * radius * radius; printf(" Ar ea = %f", area); return area;
}

12

在windows下,写出运行结果。char str[]=" Hello"; char *p=str; int n=10; 

则:sizeof(str)= (   ) sizeof(p) = (   ) sizeof(n) = (   )

13

对于一个频繁使用的短小函数,在C语言中应用(        )宏定义实现,在C++中应用(           )实现。

14

若采用10MHz的晶体振荡器,则MCS-51单片机的振荡周期为(          )ns,机器周期为(              )us

15

一个 32 位的机器,该机器的指针是(      )个字节

16

设有定义double a[10],*s=a;,能够代表数组元素a[3]的是(         )

17

void main(void){
    union{
        char ch[2];
        int d;
    }s;
    s.d = 0x4321;
    printf("%x ,%x \n",s.ch[0],s.ch[1]);
}

在 16 位编译系统上,程序执行后的输出结果是(   ),(    )

18

#include "stdio.h"
//#includ "myfun.c"
void fun(){
    char s[80],c;
    int n = 0;
    while((c = getchar () ) != '\n' )
        s[n++] = c;
    n--;
    while(n >= 0)
        printf("%c",s[n--]);
}

void main(void){
    fun();
    printf("\n");
}

当编译连接通过后,运行程序T18 时,输入Thank!则输出结果是:()

19

有以下程序
#define f(x) (x*x) 

main(){
	int i1, i2; 
	i1=f(8)/f(4) ; 
	i2=f(4+4)/f(2+2);
	printf("%d, %d\n",i1,i2);
}  

程序运行后的输出结果是()

20

有这样的定义: int a, b;交换两个变量的值,而不使用其他存储空间,
请写出算法:()