完善下面程序,该程序功能是从键盘上输入10个整数到一维数组a[10]中,然后按照下标从大到小的次序输出数组a[10]中的每个元素值,元素值之间用一个空格分开。
#include
void m
答案是:for(i=0; i<10; i++) scanf("%d",&a[i]); //3分
for(i=9; i>=0; i--) printf("%d ",a[i]); //6分
注:第1行中的&a[i]也可替换为a+i
根据函数原型“int DD(int a[], int n, int MM)”编写函数定义,利用双重for循环统计出数组a[n]中任何两个不同元素的值等于MM值的配对个数,然后返回统计结果。如假定a[i]+a[j]等于MM,同时i≠j,则为一
答案是:for(i=0; i
补充完整下面的函数定义,要求返回二维数组a[m][n]中所有元素的平均值。假定在计算过程中采用变量s存放累加值,采用i和j作为扫描数组的循环变量。
double Mean(double a[][N],int m,int n)
答案是:for(i=0; i
编写一个主函数,计算并输出表达式1+22+32+...+102的值。
答案是:#include
void main()
{
int i, s=0; //1分
for(i=1; i<=10; i++) s+=i*i; //4分
printf("s=%d\n",s); //6分
}
注:若s的初值为1,则循环变量i的初值应修改为2。
补充完整下面函数定义中while循环的循环体,该函数的功能是求出并返回由字符指针ptr所指向的字符串中包含的小写英文字母的个数。
int fun(char* ptr)
{
int n=
答案是:if(*ptr>='a' && *ptr<='z') n++; //3分
ptr++; //6分
根据函数原型“int FF(int a[], int n)”,编写函数定义,计算并返回数组a[n]中所有元素之和。
答案是:int FF(int a[], int n)
{
int i,sum=0; //1分
for(i=0; i
补充完整下面的函数定义,计算出1+1*3+2*3+...+n*3的值并返回。
int FF(int n) {
int i,s=1;
//在下面添上一行for循环语句,循环变量为
答案是:for(i=1;i<=n;i++) s+=i*3;
执行下面程序的输出结果为( )。
#include
void main() {
int a[4][3]={{3,2,6},{5,4,2},{1,5,6},{8,5,7}};
int i,j,s
答案是:S=27
执行下面程序的输出结果为( )。
#include
void main() {
int i,f1=1,f2;
for(i=2;i<5;i++) {
f2=2*f1+1;
答案是:f2=15
假定使用xxk3(5)调用下面函数,则返回值为( )。
int xxk3(int n) {
int i,s=1;
for(i=1; i<=n; i++) s*=i;
return s;
}
答案是:120
执行下面程序的输出结果为( )。
#include
void main() {
int n=10,y=0;
while(n>6) {y+=n; n--;}
printf("y=%d\
答案是:y=34
执行下面程序的输出结果为( )。
#include
void main() {
int a[3][3]={{2,3,4},{5,6,8},{10,15,20}};
int *p=(int*)a
答案是:73
执行下面程序的输出结果为( )。
#include
void main() {
int a[8]={10,8,16,15,9,21,7,16};
int i,x=a[0];
for(
答案是:x=7
执行下面程序的输出结果为( )。
#include
#define N 7
void main() {
int a[N];
int i;
a[0]=1; a[1]=2;
答案是:85
执行下面程序的输出结果为( )。
#include
void main() {
int i,f1=1,f2;
for(i=2;i<6;i++) {
f2=3*f1;
答案是:f2=81
执行下面程序的输出结果为( )。
#include
void main() {
int x=5,y=8;
if(x>=y) printf("%d %d\n",x,y);
else p
答案是:8 5
此程序运行后,得到的输出结果为( )。
#include
int fn3(int a, int b) {
int c=a; a=b; b=c;
return a+2*b-3;
}
void
答案是:29
在此程序中,具有文件作用域的变量是( )。
#include
int x1=5;
static int x2=8;
void main() {
int x3=20;
while(x1+x2
答案是:x2
当使用xk3(5)调用此函数,并假定从键盘上输入的5个整数为3、4、7、8和10,则返回值为( )。
int xk3(int n) { //n为大于等于1的整数
int i,x,s=0;
for(i=0; i
答案是:32
执行下面程序的输出结果为( )。
#include
void main() {
int a[8]={12,15,20,8,5,9,16,10};
int i,j,x=a[0]+a[1];
答案是:32
执行下面程序的输出结果为( )。
#include
#define N 8
void main() {
int a[N]={3,5,8,10,15,20,32,66};
int i, x;
答案是:47
执行下面程序的输出结果为( )。
#include
void main() {
int a[8]={6,8,7,12,5,15,18,9};
int s=0;
int *p=a;
答案是:80
执行下面程序的输出结果为( )。
#include
void main() {
int a[3][3]={{3,8,6},{5,9,2},{8,5,12}};
int i,j,s=0;
答案是:s=30
执行下面程序的输出结果为( )。
#include
void main() {
int a[3][3]={{3,8,6},{5,9,2},{8,5,12}};
int i,j,s=0;
答案是:s=58
执行下面程序的输出结果为( )。
#include
void main() {
int a[8]={3,8,6,5,9,2,8,5};
int i,s=0;
for(i=0;i<8;
答案是:s=46
执行下面程序的输出结果为( )。
#include
void main() {
int x=30,i=1,s=0;
do {s+=i*i; i++;} while(s
答案是:s=30
执行下面程序的输出结果为( )。
#include
void main() {
int i=0, s=0;
while(s<50) {i+=2; s+=i*i;}
printf("s
答案是:s=56
执行下面程序的输出结果为( )。
#include
void main() {
int i,s=0;
for(i=1;i<10;i+=3) s+=i*(i+1);
printf("s
答案是:s=78
执行下面程序的输出结果为( )。
#include
void main() {
int x=5,y=0;
switch(2*x-3) {
case 4: y+=x; brea
答案是:y=11
执行下面程序的输出结果为( )。
#include
void main() {
int a=5,b=8,c=6,d=15,x,y;
if(a>=b) x=a; else x=b;
i
答案是:15
每次只能向文本文件中写入一个字符,不能一次写入一个字符串
答案是:×
在C语言程序中,存储字符串的方法是只使用字符指针。
答案是:×
在一个函数定义中,参数表中的参数说明项之间是采用分号分开的。
答案是:×
在定义指针变量的语句“int *p,pp;”中,p和pp具有相同的数据类型。
答案是:×
在二维数组的定义语句中,不能给数组中每个元素赋初值
答案是:×
进行动态存储分配的calloc()函数带有一个参数。
答案是:×
在C语言中,在定义一个字符数组时,不能利用一个字符串进行初始化。
答案是:×
在一维数组的定义语句中,数组名后带有一对圆括号。
答案是:×
关系表达式(x!=0)的等价表达式为(!x)。
答案是:×
在定义一个变量时,不能给它赋初值。
答案是:×
每次只能向文本文件中写入一个字符,不能一次写入一个字符串。
答案是:×
在C语言中,打开一个数据文件的系统函数为fopen(),它带有一个字符串参数,用来给定文件的打开方式
答案是:×
在一个链表中,表头结点和表尾结点均无前驱结点
答案是:×
在一个链表的结点结构中,存在着一个指针域,但不一定指向自身结点类型。
答案是:×
在结构成员访问运算符中,点运算符和箭头运算符的左边均为结构指针变量
答案是:×
在结构类型的定义中,其中的数据成员可以是本身类型的直接对象
答案是:×
在C语言中,一个结构类型的长度等于所含的所有数据成员类型长度的最大值。
答案是:×
在C语言程序中,主函数也可以成为递归函数。
答案是:×
在函数定义中,若存在着调用自身函数的函数调用表达式,则称此函数为非递归函数。
答案是:×
在一个函数定义中,参数表中的参数类型可以为void类型。
答案是:×
已知“int a[10], *p=a;”,则进行p++运算是不允许的
答案是:×
一个二维字符数组a[10][20]中存储每个字符串的最大长度为20。
答案是:×
假定二维数组的定义语句为“double a[M][N];”,则每个数组元素的行下标取值范围在1~M之间
答案是:×
在一维数组的定义语句中,给数组赋初值的部分是用一对圆括号括起来的数据表。
答案是:×
return语句只有保留字,没有其他成分。
答案是:×
break语句带有语句体
答案是:×
在for循环语句的头部,for后面括号内共有2个表达式位置。
答案是:×
在for循环语句的头部,for后面括号内的各表达式之间使用空格隔开。
答案是:×
在for循环语句的头部,for后面括号内的各表达式之间使用逗号分开。
答案是:×
表达式x=x+y表示成复合赋值表达式为x=+y。
答案是:×
常数3.26是双精度浮点数。
答案是:×
在C语言程序中,只有一种使用注释语句的方法。
答案是:×
当需要在程序文件中引入系统头文件时,不需要使用#include命令
答案是:×
假定a是一个一维数组,则*(a+i)的值与a[i]的值相等
答案是:√
在定义指针变量的语句“int *p,**pp;”中,p和pp具有不同的指针类型
答案是:√
while循环是先判断循环条件,当条件为真时执行循环体
答案是:√
假定a是一个一维数组名,则a+i的值与&a[i]的值相等
答案是:√
当向字符文件输出一个换行符时,实际将输出的是回车和换行这两个字符。
答案是:√
在结构成员访问运算符中,点运算符(.)为双目运算符。
答案是:√
在结构类型的定义中,结构类型名在关键字struct和定义体之间。
答案是:√
假定一个数据对象为int*类型,则指向该对象的指针类型为int**
答案是:√
假定二维数组的定义语句为“double a[M][N];”,则每个数组元素的列下标取值范围在0~N-1之间
答案是:√
当循环次数确定时,while循环语句能够转换为for循环语句。
答案是:√
一个C语言程序能够包含多个用户头文件。
答案是:√
在C语言字符集中,包含有全部26个英文大写字母和对应的小写字母。
答案是:√
在C语言中,打开一个数据文件的系统函数为fopen(),它带有两个字符串参数,用来给定文件名和打开方式
答案是:√
定义结构类型的同时能够定义它的变量。
答案是:√
对于不加static标识的局部变量,若没有对它进行初始化,则它的初值是不确定的。
答案是:√
在一个函数定义中,参数表可以为空。
答案是:√
用于释放动态存储空间的函数为free,使用它需要带有一个参数。
答案是:√
假定a是一个一维数组,则进行a++运算是不允许的
答案是:√
假定a是一个一维数组,则数组名a的值和&a[0]的值相等
答案是:√
在定义指针变量的语句中,最前面的类型关键字仍然允许是指针类型。
答案是:√
在定义指针变量的语句中,对指针变量可以赋初值。
答案是:√
存储一个长度为0的空字符串至少需要占用1个字节的存储空间
答案是:√
字符串允许为空,并且其长度为0
答案是:√
在一维数组的定义语句中,给数组赋初值的部分是用一对花括号括起来的数据表。
答案是:√
在一维数组的定义语句中,可以给数组中每个元素赋初值。
答案是:√
do-while循环语句是以分号结束的语句
答案是:√
在C语言中,求一个整数的绝对值的数学函数为abs(x)。
答案是:√
使用const语句定义一个符号常量时,则必须对它同时进行初始化
答案是:√
在一条变量定义语句中,当同时定义多个变量时,各变量之间只能使用逗号分开
答案是:√
在一条变量定义语句中,只能定义同一类型的变量。
答案是:√
常数3.26f是单精度定点数。
答案是:√
常数3.26是双精度定点数
答案是:√
若要在程序文件中使用标准输入和输出函数,则需要引入的系统头文件为stdio.h
答案是:√
假定要访问一个结构变量x中的数据成员a,则表示方法为( )。A
A. x.a B. x->a C. x:a D. x(a)
答案是:A
假定一个函数的原型语句为“int ff(int* x);”,一个整型数组为a[20],则下面函数调用表达式不正确的是( )。B
A. ff(a) B. ff(a[0]) C. ff(a+3) D
答案是:B
64.假定a为一个数组名,则下面表达式中错误的是( )。B
A. a[i] B. *a++ C. *a D. *(a+1)
答案是:B
p所指对象的值为25,p+1所指对象的值为42,则表达式*p++的值为( )。A
A. 25 B. 42 C. 26 D. 43
答案是:A
要访问一个结构变量x中的由指针成员a所指向的对象,则表示方法为( )。D
A. x->a B. x.a C. *(a.x) D. *(x.a)
答案是:D
假定一个函数的数组参数说明为char a[],与之等价的指针参数说明为( )。B
A. char a B. char* a C. char& a D. char**a
答案是:B
已知“int a[3][5];”,则元素a[2][3]的地址比该数组的首地址大( )。B
A. 13个字节 B. 52个字节 C. 26个字节 D. 48个字节
答案是:B
假定p是一个指向数据对象的指针,则通过p表示该数据对象为( )。D
A.p* B. p& C. &p D. *p
答案是:D
一个程序文件开始使用的每条预处理命令,其首字符必须是( )。B
A. @ B. # C. $ D. %
答案是:B
int类型的长度为( )。C
A. 1 B. 2 C. 4 D. 8
答案是:C
在C语言中,关闭一个数据文件的系统函数为( )。B
A. fopen() B. fclose() C. fread() D. fwrite()
答案是:B
假定要访问一个结构指针变量x中的数据成员a,则表示方法为( )。B
A. x.a B. x->a C. x(a) D. x{a}
答案是:B
在C语言中,用户定义的标识符分为4种作用域,下列选项中不属于这4种作用域的是( )。B
A. 全局 B. 语句 C. 文件 D. 局部
答案是:B
已知“char a[3][5];”,则元素a[2][3]的地址比该数组的首地址大( )。A
A. 13个字节 B. 26个字节 C. 52个字节 D. 48个字节
答案是:A
一个指针类型的简单变量占用内存中的字节数为( )。B
A. 2 B. 4 C. 8 D. 16
答案是:B
对于一个长度为n的字符串,保存它至少需要占用的存储字节数为( )。C
A. n B. n-1 C. n+1 D. n+2
答案是:C
假定对二维数组a[3][4]进行初始化的数据为{{3,5,6},{2,8},{7}},则a[1][1]被初始化为( )。D
A. 6 B. 2 C. 7 D. 8
答案是:D
若n的值为10,则执行“for(i=1; i
答案是:A
设x和y均为逻辑值,则x && y为真的条件是( )。A
A. 它们均为真 B. 其中一个为真
C. 它们均为假 D. 其中一个为假
答案是:A
运算符优先级最高的是( )。A
A. () B. = C. + D. <
答案是:A
控制字符.\n.表示( )。D
A. 回车 B. 响铃 C. 换页 D. 换行
答案是:D
在scanf()函数调用的格式字符串中,每个格式符的先导字符为( )。B
A. # B. % C. $ D. @
答案是:B
一个程序文件开始使用的每条预处理命令,其首字符必须是( )。B
A. @ B. # C. $ D. %
答案是:B
C语言中使用的字符常量,其起止标记符是( )。A
A.单引号 B.双引号 C.中括号 D.尖括号
答案是:A
目前为:
1/2
页
首页 上页 下页 尾页