C语言程序设计(西安理工大学)知到智慧树期末考试答案题库2024年秋西安理工大学_第1页
C语言程序设计(西安理工大学)知到智慧树期末考试答案题库2024年秋西安理工大学_第2页
C语言程序设计(西安理工大学)知到智慧树期末考试答案题库2024年秋西安理工大学_第3页
C语言程序设计(西安理工大学)知到智慧树期末考试答案题库2024年秋西安理工大学_第4页
免费预览已结束,剩余4页可下载查看

下载本文档

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

文档简介

C语言程序设计(西安理工大学)知到智慧树期末考试答案题库2024年秋西安理工大学下面的变量表示文件指针变量的是(

)。

A:FILER

*fp;B:FILE

*fp

;C:FILE

fp;D:file

*fp;

答案:FILE

*fp

;若x=-1011,则[x]补=(

A:1011B:01011C:0101D:10101

答案:10101在

C中,对文件的存取以(

)为单位。

A:元素B:字节C:簇D:记录

答案:字节关于C程序在作逻辑运算时判断操作数真、假的表述中,正确的是(

)。

A:0为真,非0为假B:-1为假,1为真C:只有1为真D:0为假,非0为真

答案:0为假,非0为真若有语句int

*point,a=4;和point=&a;下面均代表地址的一组选项是(

)。

A:&a,&*point

,point

B:*&point,*point,&aC:a,point,*&aD:&*a,&a,*point

答案:&a,&*point

,point若有以下数组定义,其中不正确的是(

)。

A:int

c[100][100]={0};B:int

a[2][3];

C:int

b[][3]={0,1,2,3};D:int

d[3][]={{1,2},{1,2,3},{1,2,3,4}};

答案:int

d[3][]={{1,2},{1,2,3},{1,2,3,4}};C语言结构体类型变量在程序运行期间

A:TC环境在内存中仅仅开辟一个存放结构体变量地址的单元B:所有的成员一直驻留在内存中C:只有最开始的成员驻留在内存中D:部分成员驻留在内存中

答案:所有的成员一直驻留在内存中下列程序段的运行结果是(

)inti,b,k=0;for(i=1;i<=5;i++){

b=i%2;

while(b-->=0)

k++;}printf("%d,%d",k,b);

A:8,-2B:8,-1C:3,-1D:3,0

答案:8,-2在

C中,系统自动定义了3个文件指针stdin,stdout和stderr分别指向

终端输入、终端输出和标准出错输出,则函数fputc(ch,stdout)的功能是(

)。

A:从键盘输入一个字符给字符变量ch

B:在屏幕上输出字符变量ch的值C:将字符变量ch的值赋给stdout

D:将字符变量的值写入文件stdout中

答案:在屏幕上输出字符变量ch的值已有变量定义和函数调用语句:int

a=25;

print_value(&a);

下面函数的正确输出结果是(

)。

void

print_value(int

*x)

{

printf(“%d”,++*x);}

A:23B:25C:24D:26

答案:26C语言中基本的数据类型不包括(

)。

A:floatB:charC:intD:long

答案:long表达式!x等效于(

)。

A:x==0B:x!=0C:x!=1D:x==1

答案:x==0若有说明:long

*p,a;则不能通过scanf语句正确给输入项读入数据的程序段是(

)。

A:p=(long

*)malloc(8);

scanf("%ld",p);B:scanf("%ld",p=&a);C:*p=&a;

scanf("%ld",p);D:scanf("%ld",&p);

答案:*p=&a;

scanf("%ld",p);C语言规定,程序中各函数之间(

A:既允许直接递归调用也允许间接递归调用B:允许直接递归调用不允许间接递归调用C:不允许直接递归调用也不允许间接递归调用D:不允许直接递归调用允许间接递归调用

答案:既允许直接递归调用也允许间接递归调用不正确的字符串常量是(

)。

A:"abcxyz"B:"0"C:"12.5"D:""

答案:"abcxyz"若有以下说明和语句,int

c[4][5],(*p)[5];p=c;能正确引用c数组元素的是(

)。

A:*(p[0]+2))

B:*(p+1)+3C:p+1D:*(p+3)

答案:*(p[0]+2))以下叙述中错误的是(

)。

A:用typedef可以为各种类型起别名,但不能为变量起别名B:可以用typedef将已存在的类型用一个新的名字来代表C:可以通过typedef增加新的类型D:用typedef定义新的类型名后,原有类型名仍有效

答案:可以通过typedef增加新的类型以下4个数组定义中,(

)是错误的。

A:#define

N

5

long

b[N];

B:char

c[5];

C:int

a[7];D:int

n,d[n];

答案:int

n,d[n];下列数据类型的精度由高到低的顺序是(

)。

A:float,double,int,longB:double,int,float,longC:double,float,int,charD:char,long,double,float

答案:double,float,int,char下列程序的运行结果是(

)#include

voidfun(intk);

voidmain()

{

intw=5;

fun(w);

}

voidfun(intk)

{

printf("%d",k);

if(k>0)

fun(k-1);

}

A:54321B:543210C:5D:12345

答案:543210以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是(

A:char

t[]="abcdefg",*s=t;

B:char

s[10];strcpy(s,"abcdefg");

C:char

s[10]="abcdefg";

D:char

s[10];s="abcdefg";

答案:char

s[10];s="abcdefg";C语言是由(

)组成的。

A:主程序和子程序B:子程序C:函数D:过程

答案:函数设有inti=0;则以下while循环的执行次数是(

)while(i<10){

if(i<1)

continue;

if(i==5)

break;

i++;}

A:5次B:无限次C:1次D:6次

答案:无限次下列说法不正确的是(

)。

A:单精度定义用double,双精度定义用floatB:单精度数和双精度数都是实数C:单精度数和双精度数分配的存储空间不同D:单精度数的有效位数少,双精度数的有效位数多

答案:单精度定义用double,双精度定义用float若有说明;int

*p,m=5,n;以下正确的程序段的是(

)。

A:p=&n;

scanf("%d",*p);

B:p=&n;

*p=m;

C:scanf("%d",&n);

*p=n;D:p=&n;

scanf("%d",&p);

答案:p=&n;

*p=m;以下正确的函数原型声明是(

A:doublefun(intx;inty)B:doublefun(intx,y)C:doublefun(intx,inty);D:doublefun(intx,inty)

答案:doublefun(intx,inty);执行下面程序段后s的值是(

)inti=5,s;s=s+i;

A:6B:随机数C:0D:5

答案:随机数设有如下程序,则程序的输出结果是(

)intk=1,s=0;while(s<10)

{s=s+k*k;k++;}printf("%d",k);

A:5B:4C:6D:3

答案:4在C中,打开文件的程序段中正确的是(

)。

A:#include

<stdio.h>

FILE

fp;

fp=fopen("file1.c","w");B:#include

<stdio.h>

FILE

*fp;

fp=fopen("file1.c","WB");C:#include

<string.h>

FILE

*fp;

fp=fopen("file1.c","w");D:#include

<stdio.h>

FILE

*fp;fp=fopen("file1.c","w");

答案:#include

FILE

*fp;fp=fopen("file1.c","w");有以下定义

char

a[10],*b=a;

不能给数组a输入字符串的语句是(

)。

A:

gets(b);B:gets(&a[0]);

C:gets(a[0]);D:gets(a);

答案:gets(a[0]);以下程序的运行结果是(

)voidmain()

{

inta=0,b=1,c=0,d=20;

if(a)d=d-10;

elseif(!b)

if(!c)d=15;

elsed=25;

printf(""%d"",d);}

A:20B:15C:10D:25

答案:20下列选项中,均是合法的C语言整型常量的是(

)。

A:-0x48a,2e5,0xB:-1,986,0668C:160,-0xffff,0011D:-0xcdf,01a,0xe

答案:160,-0xffff,0011以下变量定义和赋初值错误的是(

)。

A:loatf=3*100+2.2B:charc=32;C:doublex=12.3E2;D:intn1=n2=10;

答案:intn1=n2=10;下面程序段运行时从键盘上输入:2473↙,其输出结果是(

)#includevoidmain(){

intc;

while((c=getchar())!='')

switch(c-'2')

{

case0:

case1:putchar(c+4);

case2:putchar(c+4);break;

case3:putchar(c+3);

default:putchar(c+2);break;

}}

A:668977B:668966C:6688766D:66778777

答案:668977下面程序段的输出结果是(

)inty=10;while(y--);printf("y=%d",y);

A:y=-1B:y=0C:死循环,无输出结果D:y=1

答案:y=-1下述对C语言字符数组的描述中错误的是(

)。

A:字符数组可以存放字符串B:可以用关系运算符对字符数组中的字符串进行比较C:字符数组中的字符串可以整体输入、输出D:可以在定义语句中通过赋值运算符"="对字符数组整体赋值

答案:可以用关系运算符对字符数组中的字符串进行比较下面程序段执行后的输出结果是(

)inti,s=0;for(i=0;;i++){

if(i==6)break;

s+=i;}printf("%d",s);

A:死循环B:15C:21D:10

答案:15下列各数据类型不属于构造类型的是(

)。

A:共用型B:枚举型C:结构型D:数组型

答案:枚举型若定义x为double型变量,则能正确输入x值的语句是(

)。

A:scanf("%f",x);B:scanf("%f",&x);C:scanf("%5.1f",&x);D:scanf("%lf",&x);

答案:scanf("%lf",&x);下列程序的输出结果是(

)fun(inta,intb,intc){

c=a*b;

}intmain(){intc=0;

fun(2,3,c);

printf(“%d”,c);

return0;}

A:1B:0C:6D:5

答案:0如果要将存放在双精度型数组a[10]中的10个双精度型实数写入文件型指针

fp1指向的文件中,正确的语句是(

)。

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

fwrite(&a[i],8,1,fp1);

B:fwrite(fp1,8,10,a);C:for(i=0;i<80;i++)

fputc(a[i],fp1);D:for(i=0;i<10;i++)

fputc(&a[i],fp1);

答案:for(i=0;i<10;i++)

fwrite(&a[i],8,1,fp1);下列程序的输出结果是(

)intfun(inta,intb,intc){

c=a*b;

return

c;}intmain(){intc=5;

fun(2,3,c);

printf(“%d”,c);

return0;}

A:1B:5C:6D:0

答案:5下面程序段的功能是

)。#include

main()

{char

s1;

s1=putc(getc(stdin),stdout);}

A:从键盘输入一个字符,然后在输出到屏幕的同时赋给变量s1

B:在屏幕上输出stdout的值C:从键盘输入一个字符给字符变量s1

D:从键盘输入一个字符,然后再输出到屏幕

答案:从键盘输入一个字符,然后在输出到屏幕的同时赋给变量s1C语言中主函数的个数有(

)个。

A:任意个B:1C:无穷个D:2

答案:1以下正确的函数原型声明是(

A:double

fun(intx,y)B:double

fun(intx,inty)C:double

fun(intx;inty)D:double

fun(intx,inty);

答案:double

fun(intx,inty);有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&c);为使变量a的值为1,b的值为3,c的值2,正确的数据输入方式是(

)。

A:132B:a=1,b=3,c=2C:a=1b=3c=2D:1,3,2

答案:a=1,b=3,c=2下列运算符中,优先级从高到低依次为(

)。

A:||

&&

!B:!

&&

||C:&&

!

||D:&&

||

!

答案:!

&&

||数组元素等价于一个同类型的变量。下标可为(

A:浮点型表达式B:字符串表达式C:整型表达式D:逻辑表达式

答案:整型表达式若有以下定义:floatx;inta,b;则正确的switch语句是(

A:switch(x){case1,2:printf("*");case3:printf("**");}B:switch(a+b){case1:printf("*");case1+2:printf("**");}C:switch(x){case1.0:printf("*");case2.0:printf("**");}D:switch(a){caseb<1:printf("*");caseb>2:printf("**");}

答案:switch(a+b){case1:printf("*");case1+2:printf("**");}在C语言中,字符型数据在内存中以(

)形式存放。

A:ASCII码B:BCD码C:原码D:补码

答案:ASCII码设有intx=-1;则以下循环执行的次数是(

)do

{x=x*x;}while(!x);

A:0次B:2次C:无限次D:1次

答案:1次C语言中整型数据在内存中的储存形式是(

)。

A:反码B:ASCII码C:补码D:原码

答案:补码设有以下定义:#defined2inta=0;floatb=1.25;charc='A';下面语句不正确的是(

温馨提示

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

评论

0/150

提交评论