显示学起plus弘成系统中北大学C语言程序设计所有答案 |
当#include后面的文件名用""括起时,寻找被包含文件的方式是( )。(2分)
A直接按照系统设定的标准方式搜索目录
B先在源程序所在目录搜索,再按照系统设定的标准方式搜索
C仅仅搜索源程序所在目录
D仅仅搜索当前目录
|
答案是:正确答案B
|
若有说明:int a[3][4];则对a数组元素的非法引用是。( )。(2分)
Aa[0][2*1]
Ba[1][3]
Ca[4-2][0]
Da[0][4]
|
答案是:正确答案D
|
以下正确的函数定义形式是 ( )。(2分)
Adouble fun(int x,int y){z=x+y;return z;}
Bdouble fun(int x,y){int z;return z;}
Cfun(x,y){int
|
答案是:正确答案D
|
以下函数binary的作用是应用折半查找法从存有10个整数的a数组中对关键字m进行查找,若找到,返回其下标值;反之,返回-1。请选择填空( )。
int binary(int a[],int m)
{int low=0,hi
|
答案是:正确答案A
|
if((?))printf("x=%d,y=%d,z=%d\n",x,y,z);
}
}
(2分)
Ai/result==1
Bi=result
Ci!=result
Di==result
|
答案是:正确答案D
|
下面对C语言字符数组的描述中错误的是。( )。(2分)
A字符数组可以存放字符串
B字符数组的字符串可以整体输入、输出
C可以在赋值语句中通过赋值运算符对字符数组整体赋值
D不可以用关系运算符对字符数组中的字符串进行比较
|
答案是:正确答案C
|
已知x=43,ch=.A.,y=0;则表达式(x>=y&&ch<.B.&&!y)的值是( )。(2分)
A0
B语法错误
C1
D"假"
|
答案是:正确答案C
|
n=(?);
} while(n);
printf("sum=%d",sum);}
(2分)
An/1000
Bb/100
Cn/10
Dn%10
|
答案是:正确答案C
|
循环体语句执行一次( )。(2分)
AE= =0
BE!=1
CE!=0
DE= =1
|
答案是:正确答案A
|
下面程序的功能是将从键盘输入的偶数写成两个素数之和。请选择填空( )。
#include <stdio.h>
#include <math.h>
main()
{int a,b,c,d;
scanf("%d
|
答案是:正确答案B
|
下面程序的功能是将从键盘输入的一对数,由小到大排序输出。当输入一对相等数时结束循环,请选择填空。
#include <stdio.h>
main()
{int a,b,t;
scanf("%d%d",&a,&b);
|
答案是:正确答案B
|
若有语句组typedef int AR[5];AR a;则以下叙述中正确的是( )。(2分)
Aa是一个新类型
Ba是一个整型变量
Ca是一个整型数组
Da是一个指针变量
|
答案是:正确答案C
|
以下程序的正确运行结果是( )。
#include<stdio.h>
void num()
{extern int x,y;
int a=15,b=10;
x=a-b;
y=a+b;
}
|
答案是:正确答案C
|
若有说明:int a[10];则对数组元素的正确引用是。 ( )。(2分)
Aa[10]
Ba[3,5]
Ca(5)
Da[10-10]
|
答案是:正确答案D
|
以下能对一维数组a进行正确初始化的语句是。( )。(2分)
Aint a[10]=(0,0,0);
Bint a[10]={};
Cint a[2]={0,1,2};
Dint a[10]={10*1};
|
答案是:正确答案D
|
以下与库函数strcpy(char *s1, char *s2)功能不相等的函数是( )。(2分)
Afuna(char *s1, char *s2) {while (*s1++=*s2++);}
Bfunb(char *s1, c
|
答案是:正确答案B
|
下列条件编译中xxx可表示为( )。
#xxx 标识符
程序段1
#else
程序段2
#endif
(2分)
Adefine或include
Bifdef或include
Cifdef或ifn
|
答案是:正确答案D
|
一个C程序的执行是从( )。(2分)
A本程序的main函数开始,到main函数结束
B本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C本程序的main函数开始,到本程序文件的最后一个函数结束
D本程序文件的第一个
|
答案是:正确答案A
|
有下面程序段,上机运行,将。 char a[3],b[]="China";
a=b;
printf("%s",a);
( )。
(2分)
A输出China
B输出Chi
C输出Ch
D编译出错
|
答案是:正确答案D
|
若有说明:static int a[3][4];则数组中各元素。( )。(2分)
A可在程序的运行阶段得到初值0
B可在程序的编译阶段得到初值0
C不能得到确定的初值
D可在程序的编译或运行阶段得到初值0
|
答案是:正确答案B
|
下列程序的输出结果为( )。
main()
{ struct data
{ int year, month, day;
}today;
union
{ long i; int k; char ch;
|
答案是:正确答案B
|
若用数组名作为实参, 则传递给形参的是( )。(2分)
A数组首地址
B数组第一个元素的值
C数组元素的个数
D数组中全部元素的值
|
答案是:正确答案A
|
以下能正确计算10!的程序段是( )。(2分)
Ado {i=1;s=1; s=s*i; i++; }while(i<=10);
Bdo{i=1;s=0; s=s*i; i++; }while(i<=10);
Ci=1;s=1;
|
答案是:正确答案C
|
下面四个选项中,均是不合法的整型常量的选项是( )。(2分)
A--0f1 -0xffff 0011
B-0Xcdf 017 12,456
C-018 999 5e2
D-0x48eg -068 03f
|
答案是:正确答案D
|
以下描述中正确的是( )。(2分)
A由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句。
Bdo-while循环由do开始,用while结束,在while(表达式)后面不能写分号。
C在do-
|
答案是:正确答案C
|
下面程序段的运行结果是。 char c[5]={.a.,.b.,.\0.,.c.,.\0.};
printf("%s",c);
( )。
(2分)
A.a..b.
Bab
Cab c
Dab▄(▄表示空格)
|
答案是:正确答案B
|
已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是( )。
int a1,a2;char c1,c2;
scanf("%d%c%d%c",&a1,
|
答案是:正确答案A
|
printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按方式 ( );如果字符串长度小于5,则输出按方式 ( )。(2分)
A从左起输出该字符串,右补空格
B按原字符串长从左向右全部
|
答案是:正确答案 B,C
|
若有定义:int a=7; float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是( )。(2分)
A2.500000
B2.750000
C3.500000
D0.000000
|
答案是:正确答案A
|
在C程序中,注释说明只能位于一条语句的后面( )。(2分)
A必须在最开始
B必须在系统调用的库函数的后面
C可以任意
D必须在最后
|
答案是:正确答案C
|
设有下列程序段,则scanf函数调用语句中对结构体变量成员的不正确引用为( )。
struct student
{ char name[20];
int age;
char sex;
}stu[5], *p
|
答案是:正确答案B
|
若有说明:int a[3][4]={0};则下面正确的叙述是。( )。(2分)
A只有元素a[0][0]可以得到初值0
B此说明语句不正确
C数组中各元素都可以得到初值,但其值不一定为0
D数组中每个元素均可得到初值0
|
答案是:正确答案D
|
以下正确的描述是( )。(2分)
A函数的定义可以嵌套,但函数的调用不可以嵌套
B函数的定义不可以嵌套,但函数的调用可以嵌套
C函数的定义和函数的调用均不可嵌套
D函数的定义和函数的调用均可以嵌套
|
答案是:正确答案B
|
下面程序的运行结果是。
#include<stdio.h>
main()
{char str[]="SSSWLIA",c;
int k;
for(k=2;(c=str[k])!=.\0.;k++)
{sw
|
答案是:正确答案B
|
若有:int a[6]={4,5,6,7,8,9},*p=a, *q=p; 则对数组元素的错误引用是( )。(2分)
Aa[4]
B*(p+4)
C*q++
D*a++
|
答案是:正确答案D
|
若磁盘上已存在某个文本文件,其全路径文件名为c:\c\data.txt,下列语句中不能打开文件的是( )。(2分)
AFILE *in;in=fopen("c:\c\data.txt","r");
BFILE *in;in=fope
|
答案是:正确答案A
|
sizeof(float)是( )。(2分)
A一个双精度型表达式
B一个整型表达式
C一种函数调用
D一个不合法的表达式
|
答案是:正确答案B
|
若运行时给变量输入12,则以下程序的运行结果是( )。
main()
{int x,y;
scanf("%d",&x);
y=x>12?x+10:x-12;
printf("%d\n",y);
}
|
答案是:正确答案A
|
建立函数的目的之一,以下正确的说法是( )。(2分)
A提高程序的执行效率
B提高程序的可读性
C减少程序的篇幅
D减少程序文件所占内存
|
答案是:正确答案B
|
已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是。
if(x>y)
z=x;x=y;y=z; ( )。
(2分)
A10,20,30
B20,30,30
C20,30,10
D20,30
|
答案是:正确答案C
|
当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是( )。
if(a<b)
if(c<d) x=1;
else
if(a<c)
if(b<d) x=2;
else x=3;
els
|
答案是:正确答案B
|
若有以下定义,则正确的赋值语句为( )
struct complex
{ float real;
float image;
};
struct value
{ int no;
struct co
|
答案是:正确答案C
|
已有程序段和输入数据的形式,程序中输入语句的正确形式应当为( )。
main()
{ int a;float f;
printf("Input number:");
(输入语句)
printf("\nf=%
|
答案是:正确答案D
|
以下程序段完全正确的是( )。(2分)
Aint *p; scanf("%d",&p);
Bint *p; scanf(“%d”,p);
Cint k, *p=&k; scanf("%d",p);
Dint k, *p;
|
答案是:正确答案C
|
下面程序的运行结果是( )。
#include<stdio.h>
main()
{int a,b;
for(a=1,b=1;a<=100;a++)
{if(b>=20) break;
if(b%3==
|
答案是:正确答案B
|
有一堆零件(100到200之间),如果分成4个零件一组则多出2个零件;若分成7个零件一组,则多3个零件;若分成9个零件一组,则多出5个零件。下面程序是求这堆零件总数,请选择填空( )。
#include <stdio.h>
|
答案是:正确答案D
|
C语言允许函数值类型缺省定义,此时该函数值隐含的类型是( )。(2分)
Afloat型
Bint型
Clong型
Ddouble型
|
答案是:正确答案B
|
若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为(假设a[0][0]位于数组的第一个位置上)。( )。(2分)
Ai*m+j
Bj*m+i
Ci*m+j-1
Di*m+j+1
|
答案是:正确答案D
|
以下关于运算符优先顺序的描述中正确的是 ( )。(2分)
A关系运算符<算术运算符<赋值运算符<逻辑运算符
B逻辑运算符<关系运算符<算术运算符<赋值运算符
C赋值运算符<逻辑运算符<关系运算符<算术运算符
D算术运算符<关系运
|
答案是:正确答案C
|
已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=.A.+.6.-.3.;后,c2的值为( )。(2分)
AD
B68
C不确定的值
DC
|
答案是:正确答案A
|
若使用一位数组名作为函数实参,则以下正确的说法是( )。(2分)
A必须在主调函数中说明此数组的大小
B实参数组类型与形参数组类型可以不匹配
C在被调函数中,不需要考虑形参数组的大小
D实参数组名与形参数组名必须一致
|
答案是:正确答案C
|
能正确表示“当x的取值在[1,10]和[200,210]范围内为真”的C语言表达式为( )。(2分)
A(x>=1)&&(x<=10)&&(x>=200)&&(x<=210)
B(x>=1)&&(x<=10)||(x>=200)&&
|
答案是:正确答案B
|
已有如下定义:
struct node
{int data;
struct node *next;
}*p,*q;
并已建立了如图所示的单向链表,p,q分别指向图中所示的结点,将q所指的结点插入到链表末尾组成单
|
答案是:正确答案D
|
在c语言中,引用数组元素时,其数组下标的数据类型是。( )。(2分)
A整型常量
B整型表达式
C整型常量或整型表达式
D任何类型的表达式
|
答案是:正确答案C
|
当#include后面的文件名用<>括起时,寻找被包含文件的方式是( )。(2分)
A仅仅搜索当前目录
B仅仅搜索当前目录
C直接按系统设定的标准方式搜索目录
D先在源程序所在目录搜索,再按系统设定的标准方式搜索
|
答案是:正确答案C
|
若用数组名作为函数调用的实参,传递给形参的是( )。(2分)
A数组的首地址
B数组第一个元素的值
C数组中全部元素的值
D数组元素的个数
|
答案是:正确答案A
|
C语言中(以16位PC机为例),各数据类型的存储空间长度的排列顺序为( )。(2分)
Achar<int<long<=float<double
Bchar=int<long<=float<double
Cchar<int<long
|
答案是:正确答案A
|
下面程序段( )。
for(t=1;t<=100;t++)
{scanf("%d",&x); if(x<0)continue; printf("%3d",t);
}
(2分)
A当x<0时整个循环结束
Bx>
|
答案是:正确答案D
|
以下叙述中不正确的是( )。(2分)
A预处理命令都必须以#开始
B在C程序中凡是以#开始的语句行都是预处理命令行
CC程序在执行过程中对预处理命令行进行处理
D以下是正确的宏定义 #define IBM_PC
|
答案是:正确答案C
|
如果在一个复合语句中定义了一个变量,则有关该变量正确的说法是。( )。(2分)
A只在该复合语句中有效
B只在该函数中有效
C在本程序范围内均有效
D为非法变量
|
答案是:正确答案A
|
目前为:
1/2
页
首页 上页 下页 尾页
|