1.在for循环中,不能用break语句跳出循环体。
A:对 B:错
答案:对
2.在函数的调用过程中,如果函数funA调用了函数funB,函数funB又调用了函数funA,则称为函数的循环调用。
A:对 B:错
答案:错
3.在C语言源程序中,一个变量代表内存中的一个存储单元。
A:错 B:对
答案:对
4.在定义一维数组时可以只给一部分元素赋初值。
A:错 B:对
答案:对
5.在C语言的赋值表达式中,赋值号左边必须是一个变量。
A:对 B:错
答案:对
6.函数的形参都属于全局变量。
A:对 B:错
答案:错
7.用C语言实现的算法必须要有输入输出操作。
A:对 B:错
答案:错
8.C语言中的文件又被称为流式文件。
A:对 B:错
答案:对
9.C语言只能处理文本文件。
A:错 B:对
答案:错
10.在C语言中,&运算符作为单目运算符时表示的是取地址运算。
A:错 B:对
答案:对
11.花括号“{”和“}”只能作为函数体的定界符。
A:对 B:错

12.C语言源程序的基本单位是语句。
A:正确 B:错误 13.在C语言中,二维数组元素在内存中的存放是按照若干行、若干列的形式存放的。
A:对 B:错 14.赋值表达式c=b=a=5是错误的。
A:错 B:对 15.单目运算符++的运算对象可以是char型变量、int型变量和float型变量。
A:正确 B:错误 16.两个字符串所包含的字符个数相同时,才能比较字符串。
A:错误 B:正确 17.C语言的编译预处理就是对源程序进行初步的语法检查。
A:错 B:对 18.循环结构在满足条件时反复执行循环体。
A:错 B:对 19.sizeof(float)是一个单精度型表达式。
A:对 B:错 20.有两个字符数组a、b,正确的输入格式为()。
A:scanf("%s%s”,&a,&b); B:gets(a,b); C:gets(“a”),gets(“b”); D:scanf("%s%s”,a,b); 21.设int *ptr, x, array[5]={5,4,3,2,1}; ptr=array; 则能使x的值为3的语句是( )
A:x=*(array+3); B:array+=2; x=*array; C:x=array[3]; D:x=*(ptr+2) 22.设int *p, a[10]; p=a; 则下列等式错误的是( )。
A:a[2]==*(p+2) B:p++==a++; C:*p==a[0]; D:p==&a[0]; 23.( )不是C语言提供的关键字。
A:case B:print C:default D:continue 24.关于以下一段程序的理解错误的是( )。 FILE *fp; if((fp=fopen("D:\\test.txt","w"))==NULL) { printf("Can not open the file!\n"); exit(0); }
A:fopen函数打开文件失败后的返回值为NULL B:if语句表示调用fopen函数以只读的形式打开D盘根目录下的文件test.txt C:通过调用fopen函数,使文件指针fp指向文件test.txt在内存中的缓冲区 D:FILE *fp;表示定义一个文件指针fp 25.下列程序的运行结果是( )。int main(){int x=2,y= -1,z=2 ; if(yelse z+=1; printf("%d\n",z);return 0;}
A:3 B:2 C:0 D:1 26.以下程序的输出为()#define M(x,y,z) x/y+zvoid main(){int a=1,b=2,c=3;printf("%d\n", M(a+b,b+c,c+a));}
A:5 B:8 C:4 D:9 27.C语言提供的关键字是( )。
A:break B:procedure C:begin D:append 28.假设有如下定义:char *s[2]={"I love","china"};则以下说法正确的是( ):
A:s数组的两个元素分别存放了字符'I'和'c' B:s数组元素的值分别是"I love"和"china" C:s是指针变量,它指向含有两个数组元素的字符型一维数组 D:s数组的两个元素分别存放的是两个字符串的首地址 29.语句if (a>b) k=0; else k=1;  (其中a, b, k为int) 等价于(     )。
A:k=a>b; B:k=(a>b)?0:1; C:其他均不是 D:k=(a>b)?1:0; 30.设x和y均为int型变量,则语句x+=y;y=x-y;x-=y;的功能是( )。
A:交换x和y的值 B:把x和y按从小到大排列 C:把x和y按从大到小排列 D:无确定结果 31.设已知一个文件中存放若干学生记录,其数据结构如下:struct st{ char num[10]; int age; float s[5];}定义一个数组:struct st a[10];假定文件已正确打开,则不能正确从文件中读出10个学生数据到数组中的是( )。
A:for(i=0;i B:for(i=0;i C:fread(a,sizeof(struct st),10,fp); D:for(i=0;i 32.C语言中,每个语句和数据定义是用( )结束的。
A:句号 B:逗号 C:双引号 D:分号 33.在C语言中,以下不能正确进行赋值、赋初值的语句(组)是( )
A:char *s="china"; B:char s[6]; s="china"; C:char s[5]={ 'c', 'h', 'i', 'n','a'}; D:char s[6]="china"; 34.设有定义double a[10],*s=a;,以下能够代表数组元素a[3]的是( )
A:*(s+3) B:*s[3] C:*s+3 D:(*s)[3] 35.设有代码段: int a[4]={2,3,4},i; i=a[0]*a[1]+a[2]*a[3]; 则执行结束后变量i的值为( )
A:6 B:不确定 C:10 D:4 36.当变量i=3时,表达式++i, i++的值分别是( )。
A:4,3 B:4, 4 C:3,4 D:3, 3 37.当说明一个结构体变量时系统分配给它的内存是( ) 。
A:各成员所需内存量的总和 B:结构中最后一个成员所需内存量 C:结构中第一个成员所需内存量 D:成员中占内存量最大者所需的容量 38.设有以下程序片段: int a[10],*p;p=a;则p+5表示( )。
A:元素a[5]的值 B:元素a[5]的地址 C:元素a[6]的地址 D:元素a[6]的值 39.设有如下定义, 则st1中x成员的正确引用是( )struct stru{int x; Float y;}st1,*p;p=
A:p->x B:p->st1.x C:*p.x D:(*p).st1.x 40.设有下列语句 struct date{ int year,month,day;}today;假设一个int型数据用2个字节存储,则表达式sizeof(struct date)的值为( )
A:8 B:3 C:1 D:6 41.设有程序段如下: int k=5; while (k=0) k=k-1; 则下面描述中正确的是( )。
A:循环是无限循环 B:循环体语句执行一次 C:while循环执行5次 D:循环体语句一次也不执行 42.下列说法不正确的是()。
A:形式参数是局部变量。 B:在一个函数的内部,可以在复合语句中定义变量。 C:不同的函数中,可以使用相同名字的变量。 D:主函数main中定义的变量在整个文件或者程序中都有效 43.运行下面程序时,若从键盘输入"5 "(表示回车),则程序的输出结果是( )。#include void main( ) { int a ; scanf("%d",&a); if (a++>5)printf("%d\n",a); else printf("%d\n",a--) ; }
A:4 B:6 C:7 D:5 44.如果int a=3,b=4;则条件表达式a
A:1 B:0 C:4 D:3 45.阅读以下程序:int main(){ FILE *fp; char ch; if((fp=fopen("D:\\test.txt","w"))==NULL) { printf("Can not open the file!\n"); exit(0); } ch=getchar(); while(ch!='#') { fputc(ch,fp); ch=getchar(); } fclose(fp);return 0; } 关于上述程序的分析错误的是( )。
A:ch=getchar();在程序中出现了2次,可以删除其中一处 B:程序使用到fopen,fputc,fclose三个处理test.txt文本文件的函数 C:程序功能是从键盘输入一串以#作为结束的字符,将该字符串保存到text.txt文本中 D:ch是内存中的一个变量,通过调用getchar函数从键盘缓冲区获取数据,赋值给ch 46.已有定义:int a[10]={1,2,3},*p; , 则不合法的赋值语句是( )。
A:p=&a[9]; B:p=a[9]; C:p=a+1; D:p=a; 47.在C语言函数的定义和引用中,以下描述正确的是( )
A:数组名不能作为形式参数 B:可以有也可以没有形式参数 C:函数的定义和调用可以嵌套 D:不同函数中,不能使用重名的形式参数 48.函数fseek(pFile,0L,SEEK_CUR)中的SEEK_CUR代表的起始点是(  )。
A:文件当前位置 B:文件末尾 C:其他都不对 D:文件开始 49.下列程序段执行后s值为( )。 #include int main(){ int i=5, s=0; do{ if (i%2==0) s+=i; }while(--i); printf("%d",s); return 0;}
A:6 B:其他均不是 C:9 D:15 50.设有以下定义语句,则能给数组x中下标为8的元素读入数据的正确语句是( )
double x[20],*p=x;

A:scanf("%lf",p+8); B:scanf("%f",&p[8]); C:scanf("%lf",*(x+8)); D:scanf("%f",&x[8]); 51.以下哪一个是判断字符型变量ch为小写字母的表达式( )。
52.下列语句正确的是( )
A:char string[]="china"; B:char string[]; string="china"; C:char string1[],string2[]; string2={"china"}; strcpy(string1,string2); D:char string1[5],string2[]={"china"}; string1=string2; 53.以下函数正确的是( ) 。
A:int fun(int x,int y) { int z; z=x+y; return z; } B:C) fun(int x, int y) { double z; z=x+y; return z; } C:int fun(int x, y){int z; return z; } D:double fun(int x,int y){ int x, y; double z;z=x+y; return z; } 54.已知有以下声明语句,则以下对结构体变量cmp中成员No的引用方式正确的是( )
struct company{
int No;
char Name[50];
}comp,*ptr;
ptr=∁

A:ptr->cmp.No B:*ptr.No C:ptr->No D:cmp. Ptr-> No 55.下面描述正确的是()。
A:字符串"That"小于字符串"The"; B:两个字符串所包含的字符个数相等时,才能比较字符串大小; C:字符个数多的字符串比字符个数少的字符串大; D:字符串"STOP"和字符串"STOD"相等;

温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!
点赞(5) dxwkbang
返回
顶部