(1) 下面叙述正确的是()。
A) main( )函数必须位于源程序文件的开头B) 程序中必需含有自定义函数C) 每行最多只能写两条语句D) 所有语句都必须以分号“;”结束(2) 下面叙述错误的是()。
A) C语言规定可逐个引用数组元素但不能一次引用整个数组B) C语言数组名称是数组在内存中的首地址C) 数组中每一个元素都属于同一个数据类型D) C语言数组长度在定义数组时刻不作确定(3) 以下程序段的运行结果是()。
int t[ ][3]={1,2,3,4,5,6,7,8,9,10,11,12};printf(“%d\n”,t[1][1]);A) 4B) 3C) 5D) 1(4) 以下程序段的运行结果是()。
char str[3][2]={‘a’,’b’,’c’,’\0’,’e’,’f’};printf(“%s”,str[0]);A) abc\0efB) abcefC) abcD) a(5) 以下程序段的运行结果是()。
int f(int c){ c+=2;return c;}main( ){ int a=2,c=5;a=f(a);printf(“%d %d \n”,a,c);}A) 2 4B) 4 4C) 4 5D) 2 5B) C源程序中加入一些预处理命令是为了改进程序设计环境,提高编程效率C) “#include <stdio.h>”命令的作用是在预处理时将stdio.h文件中的实际内容代替该命令D) 宏定义也是C语句,必须在行末加分号(7) 若有定义:int a=2,*p=&a;,则以下()均表示地址。
A) &a,pB) a,pC) a,*pD) &a,*p(8) 以下程序段运行后x的值为()。
int a[ ]={1,2,3,4,5,6,7,8};int i,x,*p;x=1;p=&a[1];for (i=0;i<3;i++)x*=*(p+i);A) 1B) 120C) 24D) 6(9) 下列()对结构类型变量定义是错误的。
A) struct teacher{ int num;int age;};struct teacher teach1;B) struct{ int num;int age;} teach1, teach2;C) struct{ int num;int age;} teacher;struct teacher teach1;D) struct teacher{ int num;int age;} teach1;(10) 以下程序段运行后,()对数组a元素的引用是错误的。
(其中0≤i<4,0≤j<3)A) *(*(a+i)+j)B) *(*(p+i)+j)C) p[i][j]D) *(p[i]+j)(11) 若有定义:char ch;int j,k;enum day {sun, mon, tue, wed, thu, fri, sat};int a[sat];则()对下列语句是否符合语法规则的判断是正确的。
sun=0; /*语句1*/j=mon+tue; /*语句2*/if (a[mon]>) j++; /*语句3*/A) 语句1、2、3均正确B) 语句2正确,语句1和语句3错误C) 语句1错误,语句2和语句3正确D) 语句1、2、3均错误(12) C语言的基本数据类型包括()。
A) 整型、实型、字符型B) 整型、指针型、字符型C) 整型、实型、逻辑型D) 整型、实型、空类型(13) 下面程序运行后,屏幕显示File open error!,则可能的原因是()。
#include <stdio.h>main(){FILE *fp;char str[256];fp=fopen(“test.txt”,”rt”);if (fp= =NULL){ printf(“File open error!:);return;}fscanf(fp,”%s”,str);fclose(fp);}A) 当前工作目录下没有test.txt文件B) 函数fopen( )的参数是错误的C) 当前工作目录下的test.txt文件是空文件D) text.txt文件已经打开B) float x=3.2, int i,j=6;C) float x=2.3,b,c;D) int a=2,b+=a;(15) 若有定义:int x,y,z; 语句x=(y=z=3,++y,z+=y); 运行后x的值为()。
A) 6B) 7C) 8D) 3(16) 若有定义int a=8,b=5;要实现输出形式为:8*5=40,正确的printf( )函数调用语句是()。
A) printf(“a*b=a*b\n”);B) printf(“a*b=%d\n”,a*b);C) printf(“%d*%d=a*b\n”,a,b);D) printf(“%d*%d=%d\n”,a,b,a*b);(17) 若有定义:int a;且表达式!a的值为0,则表达式()的值为1。
A) !(a<0||a>0)B) a!=0C) a= =0D) a=0(18) 下列运算符中优先级最低的是()。
A) >B) *C) =D) !(19) 以下程序段运行后x的值为()。
int a=3,b=6,x;x=(a= =b)?a++:--b;A) 6B) 4C) 5D) 3(20) 以下程序段运行后x的值为()。
int i=0,x=0;for (;i<=5;i++,i++){x+=3;}A) 9(21)()是关于C语言数据类型的正确叙述。
A) 枚举类型不是基本类型B) 变量使用前应定义相应的数据类型C) 不允许使用空类型D) 数组不是构造类型(22)()是正确的数组定义。
A) int n=5; int arr[n];B) int n; n=5; int arr[n];C) int arr[10];D) int N=5, arr[N];(23) 以下程序段运行后a的值为()。
int a=2;a=strcmp(“miss”,”miss”);A) trueB) 0C) 1D) -1(24) 以下程序段的运行结果是()。
int fun(int array[3][3]){ int j;for (j=0;n<3;j++) array[1][j]++;printf("\n");}main( ){ int j,a[3][3]={0,1,2,1,0,4,2,4,5};fun(a);for (j=0;n<3;j++) printf(“%2d”,a[1][j]);printf("\n");}A) 1 0 4B) 0 1 2C) 1 2 3D) 2 1 5(25) 若有定义:#define PI 3,则表达式PI*2*2的值为()。
A) 4B) 不确定(26) 若有定义:int *p1,*p2;,则不能用于指针变量p1、p2之间的运算符是()。
A) -B) =C) +D) = =(27) 若有定义:struct teacher{ int num;char sex;int age;} teacher1;则下面叙述错误的是()。
A) teacher1是结构类型名B) struct teacher是用户定义的结构类型C) num、sex、age都是结构变量teacher1的成员D) struct是结构类型的关键字(28) 下列程序段运行后,表达式()的值为3。
struct point{ int x;int y;} *p;stuct point a[3]={1,2,3,4,5,6};p=a;A) p[1].xB) *(p+2)C) p[3].xD) p[2].x(29) 若有定义:typedef int NUM[100];NUM n;则()语句是正确的。
A) n[0]=2;B) NUM=2;C) NUM=n;D) n=2;(30)()为非法的字符串常量。
A) “case”B) ““(31) 若当前工作目录下有一文本文件test.txt,其内容为"cprogram“(不包含引号),则以下程序段的运行结果是()。
FILE *fp;char *str;if ((fp=fopen(“test.txt”,”r”))!=NULL)str=fgets(str,5,fp);printf("%s",str);fclose(fp);A) cproB) cprogC) ogramD) gram(32) 若有定义:int a=3;,语句a+=a-=a*a;运行后a的值为()。
A) -3B) -6C) -12D) 0(33) 若有定义:int i=3,j=6;,则表达式(--i)*(j++)的值为()。
A) 12B) 10C) 18D) 15(34) getchar( )函数的功能是获取终端输入的()。
A) 一个实型变量值B) 一个字符C) 多个字符D) 一个整型变量表达式(35) 若有定义:int a;,则表达式()不能用来判断a值为奇数是“真”,偶数是“假”。
A) a%2= =1B) !(a%2)C) a%2D) !(a%2= =0)(36) 若有定义:float x=3.5,y=3.6; 则表达式()的值为6。
A) (int)x+(int)yB) x+yC) (int)(x+y)D) int(x+y)void main(){ int a,b=2,c=6;a=3;if (a>6) a=a+b;else if (a= =6) b=a+c;else a=b+c;printf("%d\n",a);}A) 9B) 6C) 8D) 5(38) 以下程序段运行后x的值为()。
int i,j,x=0for (i=3;i>=1;i--)for (j=1;j<=i;j++)x=x+2;A) 8B) 14C) 10D) 12(39) 下面叙述错误的是()。
A) c源程序必须包含一个main( )函数B) c源程序可由一个或多个函数组成C) 一个c源程序的执行是从main( )函数开始,直到main( )函数结束D) 注释说明部分只能位于c源程序的最前面(40) 下面叙述错误的是()。
A) 一个指针变量只能指向同一类型的变量B) 一个变量的地址称为该变量的指针C) 可以将一个整数值赋给指针变量D) 任何指针变量都可以与空指针NULL进行比较(41) 以下程序的运行结果是()。
main(){ int x,y;int *p,*q,*t;x=23;y=45;p=&x;q=&y;t=p;p=q;A) 45,23B) 45,45C) 23,45D) 23,23(42) 若有定义int a=1,b=2,t=3;struct data{ char afloat b[3];long c;}d1;则变量d1的长度是()。