第一句子大全,网罗天下好句子,好文章尽在本站!

北京交通大学《C语言程序设计(专)》复习题A

时间:2023-01-11

一、 单选题1 若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是 A 。for i=5;i;iforj=0;j=10 or a=0|a=10 && a=10 || ad x

一、 单选题

1. 若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是( A )。

for (i=5;i;i--)

for(j=0;j<4;j++){...}

A. 20

B. 25

C. 24

D. 30

2. 若有以下定义:

char s=’92’; 则该语句(A)。

A. 使s的值包含1个字符

B. 定义不合法,s的值不确定

C. 使s的值包含4个字符

D. 使s的值包含3个字符

3. 设 x, 能正确表示逻辑关系:"a>=10或a<=0"的C语言表达式是( D )。

A. a>=10 or a<=0

B. a>=0|a<=10

C. a>=10 && a<=0

D. a>=10 || a<=0

4. 设 a 为整型变量,不能确定表达数学关系 10

A. 10

B. a==11|| a==12|| a==13|| a==14

C. a>10&&a<15

D. !(a<=10)&&!(a>=15)

5. 设 int x=1, y=1; 表达式(!x||y--)的值是( B )。

A. 0

B. 1

C. 2

D. -1

6. 与 y=(x>0?1:x<0?-1:0);的功能相同的if语句是( A )。

A. if (x>0) y=1; B. if(x)

else if(x<0)y=-1; if(x>0)y=1;

else y=0; else if(x<0)y=-1;

else y=0;

C. y=-1 D.y=0;

if(x) if(x>=0)

if(x>0)y=1; if(x>0)y=1;

else if(x==0)y=0; else y=-1;

else y=-1;

7. 以下选项中正确的整型常量是(B)。

A. 13.

B. -20

C. 1,000

D. 4 5 6

8. 以下叙述中正确的是(B)。

A. a是实型变量,C允许进行以下赋值a=10,因此可以这样说:实型变量中允许存放整型值。

B. 在赋值表达式中,赋值号右边既可以是变量也可以是任意表达式。

C. 执行表达式a=b后,在内存中a和b存储单元中的原有值都将被改变,a的值已由原值改变为b的值,b的值由原值变为0。

D. 已有a=3,b=5。当执行了表达式a=b,b=a之后,已使a中的值为5,b中的值为3。

9. 与十进制数47相等的十六进制数是(A)。

A. 2F

B. 215

C. 32F

D. 115

10. 在C语言中,数字0x100是一个(D)。

A. 非法数

B. 八进制数

C. 十进制数

D. 十六进制数

11. 已知 int i,a; 执行语句“i=(a=2*3,a*5),a+6;”后,变量a的值是(D)。

A. 36

B. 30

C. 12

D. 6

12. C语言中规定函数的返回值的类型是由(D)。

A. return语句中的表达式类型所决定

B. 调用该函数时系统临时决定

C. 调用该函数时的主调用函数类型所决定

D. 在定义该函数时所指定的函数类型所决定

二、 判断题

13. 在C语言中,实参与其对应的形参各占独立的存储单元。(A )

A. 对

B. 错

14. 指向不同类型数组的两个指针不能进行有意义的比较。( A )

A. 对

B. 错

15. 一个数组能够存储不同类型的数据。( B )

A. 对

B. 错

16. 内存单元的地址与内存单元中的内容是两个相同的内容。(B )

A. 对

B. 错

17. 假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是8。( A)

A. 对

B. 错

18. 只能在循环体内和switch语句体内使用break语句。(A )

A. 对

B. 错

三、 程序题

19. 下列程序的运行结果是。

main()

{

int a=4,b=3,c=1,d=2,x=0;

if (a>b)

{ if (c>d) x=1;}

else x=2;

printf(“%dn”,x);

}

参考答案:0

20. 补充完整以下程序,实现数组第一个元素和最后一个元素的交换,第二个元素和倒数第二个元素的交换,依次类推。

void func(int a[ ],int n)

{

int j,temp; /*n为数组元素个数*/

for (j=0;j<=;j++)

{temp=a[j];; a[n-1-j]=temp;}

}

main()

{ int x[5]={2,5,1,7,8},len=5,k;

func();/*调用函数*/

for (k=0; k

printf(“%2d”,x[k]);

}

参考答案:n/2;a[j]=a[n-1-j];x,len

21. 编写程序,求满足1+2+3+???+n>100中的最小的n值并输出。

参考答案:

#include "stdio.h"

main(){

int n=0,sum=0;

do{

++n;

sum=sum+n;

}while(sum<=100);

printf("n=%d",n);

}

北交《C语言程序设计(专)》复习题B

四、 单选题

1. 说明语句“int (*p)();”的含义是___C___。

A. p是一个指向一维数组的指针变量

B. p是指针变量,指向一个整型数据

C. p是一个指向函数的指针,该函数的返回值是一个整型

D. 以上都不对

2. 以下叙述正确的是( D )。

A. do-while语句构成的循环不能用其它语句构成的循环来代替。

B. do-while语句构成的循环只能用break语句退出。

C. 用do-while语句构成的循环,在while后的表达式为非零时结束循环。

D. 用do-while语句构成的循环,在while后的表达式为零时结束循环。

3. 下列程序执行后的输出结果是( A )。

main()

{ int x=’f’; printf(“%c n”,’A’+(x-‘a’+1)); }

A. G

B. H

C. I

D. J

4. 执行下面的程序段后,变量k中的值为( A )。

int k=3, s[2];

s[0]=k; k=s[1]*10;

A. 不定值

B. 33

C. 30

D. 10

5. 若已定义:

int a[ ]={0,1,2,3,4,5,6,7,8,9], *p=a, i;

其中 0≤i≤9, 则对a数组元素不正确的引用是( D )。

A. a[p-a]

B. *(&a[i])

C. p[i]

D. a[10]

6. 下列程序执行后的输出结果是( A )。

void func(int *a,int b[])

{ b[0]=*a+6; }

main()

{ int a,b[5];

a=0; b[0]=3;

func(&a,b); printf(“%d n”,b[0]);

}

A. 6

B. 7

C. 8

D. 9

7. 以下不能定义为用户标识符是( D)。

Main

_0

_int

sizeof

8. 合法的数组定义是____D____。

A. int a[]="string";

B. int a[5]={0,1,2,3,4,5};

C. vhst s="string";

D. char a[]={0,1,2,3,4,5};

9. 若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是__C__。

A. 1

B. 2.0

C. 2

D. 2.5

10. 有下列程序段,while循环执行的次数是__A___。

int k=0;

while(k=1) k++;

A. 无数次

B. 有语法错,不能执行

C. 一次也不执行

D. 执行一次

11. 已知:char *p,*q;,下列选项中正确的语句是___C___。

A. p*=3;

B. p/=q;

C. p+=3;

D. p+=q;

12. 为求出s=10!的值,则变量s的类型应当为___C___。

A. int

B. unsigned

C. long

D. 以上三种类型均可

五、 判断题

13. 在C语言中,for循环的表达式一是必须要的。(B)

A. 正确

B. 错误

14. 对于二维数组a[2][3],则a[1]表示是第二行的首地址。(A)

A. 正确

B. 错误

15. c语言中,每个函数都必须要有一个且只有一个main函数。(B)

A. 正确

B. 错误

16. 在if-else语句中,配对规则是else总是与最近的未配对的if配对。(A)

A. 正确

B. 错误

17. 一个算法应该具备有穷性、确定性、输入、输出和有效性。(A)

A. 正确

B. 错误

18. C语言中,函数的隐含存储类别是extern。(A)

A. 正确

B. 错误

六、 程序题

19. 阅读程序,写出sort函数的功能和整个程序的运行结果。

#include "stdio.h"

void sort(int a[],int n)

{

int i,j,t;

for(i=0;i

for(j=i+2;j

if(a[i]

t=a[i];

a[i]=a[j];

a[j]=t;

}

}

main()

{

int aa[10]={1,2,3,4,5,6,7,8,9,10},i;

sort(aa,10);

for(i=0;i<10;i++)

printf("%d,",aa[i]);

printf("n");

}

参考答案:sort函数的功能:对奇数单元的倒序排列。运行结果:9,2,7,4,5,6,3,8,1,10

20. 下列程序的运行结果是______________________。

#include

#include

main()

{

int a=1,b=4,c=2;

float x=10.5,y=4.0,z;

z=(a+b)/c+sqrt((double)y)*1.2/c+x;

printf(“%fn”,z);

}

参考答案:13.700000

21. 补全下列程序______________________。

已知能被4整除而不能被100整除的或者能被400整除的年份是润年,则判断某一年是否是润年的程序如下:

main()

{

int year,leap;

scanf(“%d”,&year);

if ____________________

leap=1;

else leap=0;

if ______________________ printf(“是润年”);

else printf(“不是润年”);

}

参考答案:(year%4= = 0 && year%100 !=0)|| year%400= =0);(leap)

北交《C语言程序设计(专)》复习题解析A

七、 程序题

1. 简述字符常量和字符串常量的区别。

考核知识点解析:本题属于基本概念的考核。

答案:字符常量是用单引号括起来的一个字符,字符串常量是由一对双引号括起来的字符序列。字符常量用字符变量来存放,实际存放的是该字符在机器字符集中的ASCII码值,字符串常量是用一个字符数组来存储的,字符串在存储时末尾被系统自动加上转义字符""。

2. 编程:输入两个数组(数组元素个数自定),输出在两个数组中都出现的元素。例如,a[5]={2,3,4,5,6},b[6]={3,5,7,9,10,-1},则输出3、5。

考核知识点解析:首先利用for循环为两个数组元素赋值,然后利用for循环的嵌套判断相同元素。

答案:

#include "stdio.h"

#define NA 6

#define NB 8

void main()

{ float a[NA],b[NB];

int i,j;

for(i=0;i

scanf("%f",&a[i]);

for(i=0;i

scanf("%f",&b[i]);

for(i=0;i

for(j=0;j

if(a[i]==b[j])

{ printf("%fn",a[i]); break; }

}

3. 阅读以下程序

swap (int *p1,int *p2)

{ int temp;

temp=*p1;

*p1=*p2;

*p2=temp;

}

swap (int *p1,int *p2)

{ int *p;

*p=*p1;

*p1=*p2;

*p2=*p;

}

swap (int *p1,int *p2)

{ int *p;

p=p1;

p1=p2;

p2=p;

}

1)以上三个函数功能是否相同?请写出原因。

2)以上哪个函数可以实现两个数的交换?

3)对不能实现两个数交换的函数进行修改,使其能实现。

考核知识点解析:指针变量是地址变量,即存放地址的变量。本题应了解指针变量的定义方法和使用方法。

答案:

1)三个函数实现的功能都不同,第一个函数可以实现两个数值的交换;第二个函数不能正常实现两个数值的交换,因为函数中定义的局部指针变量p,没有指向确定的变量,因此p是不确定的值,当执行*p2=*p语句时不能得到预期结果;第三个函数不能实现两个数值的交换,因为main()中pa和pb作为实参分别传给swap()的形参p1和p2,在swap()函数中实现了p1和p2的交换,但是函数调用结束返回main()时,形式参数p1和p2均为释放,不能反向传递给pa和pb,所以不能实现a和b的值的交换。

2)第一个函数能够实现两个数的交换。

3)第二、三个函数均修改为如下程序可以实现两个数的交换。

swap (int *p1,int *p2)

{ int c;

int *p=&c;

*p=*p1;

*p1=*p2;

*p2=*p;

}

4. 下列程序的运行结果是____________。

#include

#include

main()

{

int a=1,b=4,c=2;

float x=10.5,y=4.0,z;

z=(a+b)/c+sqrt((double)y)*1.2/c+x;

printf(“%fn”,z);

}

考核知识点解析:本题应重点了解各种算术运算符的使用规则,以及优先级。同时了解sqrt函数以及强制类型转换符的使用方法。

答案:13.700000

5. 编写程序将一个数组中的数按逆序重新存放并输出(程序中数组的元素个数自定,逆序时不使用辅助数组)。如:输入5个数3、9、7、6、1,逆序存放后数组是1、6、7、9、3。

考核知识点解析:利用for循环实现数组元素的交换,重点是如何表示首尾对应的元素,如数组共10个元素,第1个元素的对应元素是第10个元素,第2个元素的对应元素是第9个元素,以此类推。

答案:

#include "stdio.h"

main()

{

int a[10],i,temp;

printf("请输入10个整数:n");

for(i=0;i<10;i++)

scanf("%d",&a[i]);

printf("n 原始顺序:");

for(i=0;i<10;i++)

printf("%d ",a[i]);

for(i=0;i<5;i++){

temp=a[i];

a[i]=a[9-i];

a[9-i]=temp;

}

printf("n 逆序后的顺序:");

for(i=0;i<10;i++)

printf("%d ",a[i]);

}

北交《C语言程序设计(专)》复习题解析B

八、 程序题

1. 写出下列程序的输出结果。

#include

main()

{

int i,j,a[2][3]={1,2,3,4,5,6},b[3][2];

for(i=0;i<2;i++)

{

for(j=0;j<3;j++)

{

printf("%5d",a[i][j]);

b[j][i]=a[i][j];

}

printf("n");

}

for(i=0;i<=2;i++)

{

for(j=0;j<=1;j++)

printf("%5d",b[i][j]);

printf("n");

}

}

考核知识点解析:本题首先利用for循环的嵌套引用二维数组的元素,将a数组中的元素赋值给b数组中,然后利用for循环的嵌套输出b数组中的元素。

答案:

1 2 3

4 5 6

1 4

2 5

3 6

2. 阅读下列程序,回答下列问题。

main()

{

int i,n=0;

for(i=2;i<5;i++)

{

do{

if(i%3) continue;

n++;

printf("c");

}while(!i);

n++;

printf("d");

}

printf("n=%dn",n);

}

1)分别写出continue语句运行的次数、第一个n++运行的次数、第二个n++运行的次数。

2)写出程序的运行结果。

考核知识点解析:continue语句的作用是结束本次循环,即跳过循环体中下面未执行的语句,接着执行下一次是否执行循环的判定,而不是终止整个循环的执行。

答案:

1)continue语句运行的次数:第一个n++运行的次数是1,第二个n++运行的次数是3。

2)运行结果:n=4

3. 阅读程序,写出运行结果。

#include

func(int a,int b)

{

static int m=0,i=2;

i+=m+1;

m=i+a+b;

return (m);

}

main()

{

int k=4,m=1,p;

p=func(k,m);

printf("%d,",p);

p=func(k,m);

printf("%dn",p);

}

考核知识点解析:静态局部变量的值在函数调用结束后不消失而保留原值,即其占用的存储单元不释放,在下一次该函数调用时,该变量已有值,就是上一次函数调用结束时的值。

答案:8,17

4. 编写一个求1——n内的偶数和的函数,在main()函数中输入n,然后调用该函数求1——n的偶数和并输出。

考核知识点解析:利用for循环和if语句的嵌套依次判断相应数值是否是偶数,如果是偶数则加入到和变量中。

答案:

#include

long sum(int n)

{

int i;

long sum=0;

for(i=1;i<=n;i++)

{

if(i%2==0)

sum=sum+i;

}

return sum;

}

main()

{

int n;

long s;

printf("nEnter n:");

scanf("%d",&n);

s=sum(n);

printf("The s is %ld",s);

}

5. 使用指针编写程序,输入一行字符,统计出其中字母、数字和其它字符的个数。

考核知识点解析:利用while循环遍历字符串,当出现""字符时,字符串结束;否则依次取出字符,利用if语句判断字符是字母、数字还是其他字符,并用相应的变量计数。

答案:

#include "stdio.h"

main()

{

char ch[20],*p;

int letter=0,digit=0,other=0;

printf("请输入:");

scanf("%s",ch);

p=ch;

while(*p!=""){

if((*p>="a"&&*p<="z")||(*p>="A"&&*p<="Z"))

letter++;

else if(*p>="0"&&*p<="9")

digit++;

else

other++;

p++;

}

printf("letter=%d,digit=%d,other=%d",letter,digit,other);

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。
相关阅读
如何做好交通工程翻译(句子篇)?

如何做好交通工程翻译(句子篇)?

在当今全球化的时代,每个国家或多或少面临着不同的交通问题,加强各国在交通规划,交通设施等方面的交流显得尤为重要。交通运输工程翻译是相互交流的必要途径,增强对交通工程翻译的认知,有利于提高交通工程翻译的...

2022-11-15 #经典句子

初一必备!七年级下册英语第三单元重点知识梳理 赶紧学习!

初一必备!七年级下册英语第三单元重点知识梳理 赶紧学习!

说起交通,这是一个我们大家在日常生活总能提起的话题。上下学需要交通,上下班需要交通,出门旅游需要交通。我们每一次出行都能带来或多或少关于“交通”的谈资。七年级下学期英语第三单元以“交通”为话题展开教学...

2023-01-11 #经典句子

初中英语:交通方式的表达你知道吗?英语老师帮你轻松解决

初中英语:交通方式的表达你知道吗?英语老师帮你轻松解决

在七年级下册,我们会学到交通方式的表达, 大概可以分为三种表达方式,学生往往前两个还比较好理解,到第三个就不知道什么意思了,今天我们就来总结一下交通方式的表达及句子转换。by+交通工具的单数名词。表示“乘...

2023-01-11 #经典句子

夜晚开车注意安全句子

夜晚开车注意安全句子

...顺畅。安全驾车,平平安安。7、以慎为本,以礼当先;交通安全,生命久远。8、咫尺天涯,安全随行;平安你我,幸福大家。9、交通安全:三无车船莫搭乘,上下车船待停稳,横穿公路观左右,斑马标志要看清。10、拐弯路面...

2011-09-15 #经典句子

《流浪地球》票房破亿 魔音一样的交通提示语 原来与吴京有关

《流浪地球》票房破亿 魔音一样的交通提示语 原来与吴京有关

...令到所有观看这部影片的观众都记住了一句台词,那就是交通提示语。道路千万条,安全第一条,行车不规范,亲人两行泪。可以说这句台词是影片中重复出现次数最多的,更是能够称得上为魔音的一句话。但其实这句话也只是...

2023-12-20 #经典句子

怎样高效利用雅思写作范文

怎样高效利用雅思写作范文

...使用私家车。Para 3: 其它有效的方法①鼓励人们使用公共交通②建造更多更宽的路Para 4:总结第二步:通读范文,总结文章的提纲,与自己的版本进行核对。如:Para 1:引出话题+表达观点Para 2:不同意的原因①油价提升不能长远...

2009-03-23 #经典句子

二年级《语文园地六》 看似简单的知识点 这样复习才能真会!

二年级《语文园地六》 看似简单的知识点 这样复习才能真会!

...孩子真学会!识字加油站:“识字加油站”部分,是两组交通工具名称的词语。要认读词语和生字,还要了解不同交通工具的用途,以帮助我们更快更准的识字。第一组是路上交通工具,轿车和摩托车比较常见,救护车是用来救...

2023-01-11 #经典句子

二年级语文上册的语文园地这样学习 看一线语文教师讲解五大板块

二年级语文上册的语文园地这样学习 看一线语文教师讲解五大板块

...、科、考”11个生字,并在识字中学习词语,认识常见的交通工具有哪些?孩子们借助注音来读一读语文书82页上面的这8个词语,都是交通工具,那么交通工具的作用,就是这些车呀船啊,它的名称大多都和它的用途有关系,同...

2022-11-19 #经典句子

车出事故报案时 这4句话不能说 说了保险公司一分不赔 亏不亏

车出事故报案时 这4句话不能说 说了保险公司一分不赔 亏不亏

...上行驶时,有很多紧急情况。如果您注意它,可能会发生交通违章甚至交通事故。但是,当报告车祸时,这四个句子不能说。据说保险公司不会赔偿,损失也不会损失!第一句话:汽车修理好了,请按照修理顺序解决索赔!车主...

2023-01-11 #经典句子