一、单项选择共300题
━━━━━━━━━━━━━━━━━━
第1题(1.0分)题号:513
int a[10];合法的数组元素的最小下标值为()。
A:10
B:9
C:1
D:0
答案:D
第2题(1.0分)题号:681
以下运算符中优先级最低的是()。
A:&&
B:&
C:||
D:|
答案:C
第3题(1.0分)题号:187
经过下列的语句int j,a[10],*p;定义后,下列语句中合法的是()。
A:p=p+2;
B:p=a[5];
C:p=a[2]+2;
D:p=&(j+2);
答案:A
第4题(1.0分)题号:640
以下对二维数组a的正确说明是()。
A:int a[3][]
B:float a(3,4)
C:double a[1][4]
D:float a(3)(4)
答案:C
第5题(1.0分)题号:684
在C语言中,要求运算数必须是整型的运算符是()。A:^
B:%
C:!
D:>
答案:B
第6题(1.0分)题号:654
以下不能正确定义二维数组的选项是()。A:int a[2][2]={{1},{2}};
B:int a[][2]={1,2,3,4};
C:int a[2][2]={{1},2,3};
D:int a[2][]={{1,2},{3,4}};
答案:D
第7题(1.0分)题号:742
若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)
的返回值是()。
A:EOF
B:0
C:非零值
D:NULL
答案:C
第8题(1.0分)题号:108
设C语言中,int类型数据占2个字节,则short类型数据占()。
A:1个字节
B:2个字节
C:4个字节
D:8个字节
答案:B
第9题(1.0分)题号:489
下列标识符中,不合法的C语言用户自定义标识符是()。
A:printf
B:enum
C:_
D:sin
答案:B
第10题(1.0分)题号:646
若有说明int a[3][4];则a数组元素的非法引用是()。
A:a[0][2*1]
B:a[1][3]
C:a[4-2][0]
D:a[0][4]
答案:D
第11题(1.0分)题号:658
若使用一维数组名作函数实参,则以下正确的说法是()。
A:必须在主调函数中说明此数组的大小B:实参数组类型与形参数组类型可以不匹配[必须匹配]
C:在被调用函数中,不需要考虑形参数组的大小
D:实参数组名与形参数组名必须一致【可以不同】
答案:A
第12题(1.0分)题号:728
已知函数的调用形式:fread(buffer,size,count,fp);其中buffer
代表的是()。
A:一个整数,代表要读入的数据项总数
B:一个文件指针,指向要读的文件
C:一个指针,指向要读入数据的存放地址D:一个存储区,存放要读的数据项
答案:C
第13题(1.0分)题号:145
经下列语句定义后,sizeof(x),sizeof(y),sizeof(a),sizeof(b)在
微机上的值分别为()。
char x=65;
float y=7.3;
int a=100; double b=4.5;
A:2,2,2,4
B:1,2,2,4
C:1,4,2,8
D:2,4,2,8
答案:C
第14题(1.0分)题号:106
以下叙述中不正确的是()。
A:一个好的程序应该有详尽的注释
B:在C程序中,赋值运算符的优先级最低【逗号运算】
C:在C程序中,j++;是一条赋值语句
D:C程序中的#include和#define均不是C语句
答案:B
第15题(1.0分)题号:594
设int x=1, y=1; 表达式(!x||y--)的值是()。A:0
B:1
C:2
D:-1
答案:B
第16题(1.0分)题号:711
下列选项中正确的语句组是()。
A:char s[8]; s={"Beijing"};
B:char *s; s={"Beijing"};
C:char s[8]; s="Beijing";
D:char *s; s="Beijing";
答案:D
第17题(1.0分)题号:195
若有下列定义和语句,则对a数组元素的非法引用是()。
int a[2][3], (*pt)[3]; pt=a;
A:pt[0][0]
B:(*(pt+1))[2]
C:*(pt[1]+2)
D:*(a[0]+2
答案:B
第18题(1.0分)题号:612
语句while(!E);中的表达式!E等价于()。A:E==0
B:E!=1
C:E!=0
D:E==1
答案:A
第19题(1.0分)题号:100
以下标识符中,不能作为合法的C用户定义标识符的是()。
A:putchar
B:_double
C:_123
D:INT
答案:A
第20题(1.0分)题号:715
若有说明:int i, j=2,*p=&i;,则能完成i=j赋值功能的语句是()。
A:i=*p;
B:*p=*&j;【*P=i=J】
C:i=&j;
D:i=**p;
答案:B
第21题(1.0分)题号:633
对以下说明语句int a[10]={6,7,8,9,10}; 的正确理解是()。
A:将5个初值依次赋给a[1]至a[5]
B:将5个初值依次赋给a[0]至a[4]
C:将5个初值依次赋给a[6]至a[10]
D:因为数组长度与初值的个数不相同,所以此语句不正确
答案:B 第22题(1.0分)题号:431
下列程序的输出结果是()。
main()
{ int x=1,y=0,a=0,b=0;
switch(x)
{
case 1:switch(y)
{
case
0:a++;break;
case
1:b++;break;
}
case 2:a++;b++;break;
case 3:a++;b++;break;
}
printf("a=%d,b=%d\n",a,b);
}
A:a=1,b=0
B:a=2,b=1
C:a=1,b=1
D:a=2,b=2
答案:B
第23题(1.0分)题号:552
应用缓冲文件系统对文件进行读写操作,关闭文件的函数名为()。
A:fclose()
B:close()
C:fread()
D:fwrite
答案:A
第24题(1.0分)题号:556
static struct {int a1;float a2;char a3;}a[10]={1,3.5,'A'};
说明数组a是地址常量,它有10个结构体型的下标变量,采用静态存
储方式,其中被初始化的下标变量是()。A:a[1]
B:a[-1]
C:a[0]
D:a[10]
答案:C
第25题(1.0分)题号:543
若有int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则输出结果不为5
的语句为()。
A:printf("%d",*(a+5));
B:printf("%d",p[5]);
C:printf("%d",*(p+5));
D:printf("%d",*p[5]);
答案:D
第26题(1.0分)题号:580
设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的
数据类型为()。【C语言总是转换为最长的数据类型】
A:int
B:float
C:double
D:不确定
答案:C
第27题(1.0分)题号:199 若有int a[][]={{1,2},{3,4}}; 则*(a+1),*(*a+1)的含义分别为()。
A:非法,2
B:&a[1][0],2
C:&a[0][1],3
D:a[0][0],4
答案:B
第28题(1.0分)题号:148
C语言中要求对变量作强制定义的主要理由是()。
A:便于移植
B:便于写文件
C:便于编辑预处理程序的处理
D:便于确定类型和分配空间
答案:D
第29题(1.0分)题号:202
设有如下定义:struct sk {int a; float b;} data,*p;
若要使p指向data中的a域,正确的赋值语句是()。
A:p=(struct sk*)&data.a;
B:p=(struct sk*) data.a;
C:p=&data.a;
D:*p=data.a;
答案:A
第30题(1.0分)题号:697
若x=2,y=3则x&y的结果是()。
A:0
B:2
C:3
D:5
答案:B
第31题(1.0分)题号:136
下列程序的输出结果为()。
main()
{int m=7,n=4;
float a=38.4,b=6.4,x;
x=m/2+n*a/b+1/2;
printf("%f\n",x);
}
A:27.000000
B:27.500000
C:28.000000
D:28.500000
答案:A
第32题(1.0分)题号:131
若k为int型变量,则以下程序段的执行结果是()。
k=-8567; printf("|%06D|\n",k);
A:格式描述符不合法,输出无定值
B:输出为|%06D|
C:输出为|0-8567|
D:输出为|-8567|
答案:B
第33题(1.0分)题号:523
函数的形式参数隐含的存储类型说明是()。A:extern
B:static
C:register
D:auto
答案:D
第34题(1.0分)题号:550
不仅可将C源程序存在磁盘上,还可将数据按数据类型分别以什么的
形式存在磁盘上()。
A:内存
B:缓冲区
C:文件
D:寄存器
答案:C
第35题(1.0分)题号:571
以下叙述正确的是()。A:在C程序中,main函数必须位于程序的最前面
B:C程序的每行中只能写一条语句
C:C语言本身没有输入输出语句
D:在对一个C程序进行编译的过程中,可发现注释中的拼写错误
答案:C
第36题(1.0分)题号:509
int a=1,b=2,c=3;
if(a>b)a=b;
if(a>c)a=c;
则a的值为()。
A:1
B:2
C:3
D:不一定
答案:A
第37题(1.0分)题号:693
以下各选项企图说明一种新的类型名,其中正确的是()。
A:typedef v1 int;
B:typedef v2=int;
C:typedef int v3;
D:typedef v4: int;
答案:C
第38题(1.0分)题号:151
以下程序的运行结果是()。
main()
{
int i=1,sum=0;
while(i<10) sum=sum+1;i++; 【while使用格式不正确,没有用{}】
printf("i=%d,sum=%d",i,sum);
}
A:i=10,sum=9
B:i=9,sum=9
C:i=2,sum=1
D:运行出现错误
答案:D
第39题(1.0分)题号:94
在C语言中,能代表逻辑值“真”的是()。A:True
B:大于0的数
C:非0整数
D:非0的数
答案:D
第40题(1.0分)题号:632
以下叙述正确的是()。
A:do-while语句构成的循环不能用其它语句构成的循环来代替.
B:do-while语句构成的循环只能用break语句退出.
C:用do-while语句构成的循环,在while后的表达式为非零时结束循环.
D:用do-while语句构成的循环,在while后的表达式为零时结束循环
答案:D
第41题(1.0分)题号:500
下列程序段的输出结果为()。
int x=3,y=2;
printf("%d",(x-=y,x*=y+8/5));
A:1
B:7
C:3
D:5
整形
答案:C
第42题(1.0分)题号:518
char a[]="This is a program.";输出前5个字符的语句是()。A:printf("%.5s",a);
B:puts(a);
C:printf("%s",a);
D:a[5*2]=0;puts(a);
答案:A
第43题(1.0分)题号:669
若用数组名作为函数的实参,传递给形参的是()。
A:数组的首地址
B:数组第一个元素的值
C:数组中全部元素的值
D:数组元素的个数
答案:A
第44题(1.0分)题号:496
double x;scanf("%lf",&x);不可以赋值给x变量的常量是()。
A:123
B:100000
C:’A’
D:"abc"
答案:D
第45题(1.0分)题号:531
C语言中,定义结构体的保留字是()。A:union
B:struct
C:enum
D:typedef
答案:B
第46题(1.0分)题号:630
逻辑运算符两侧运算对象的数据类型()。A:只能是0或1
B:只能是0或非0正数
C:只能是整型或字符型数据
D:可以是任何类型的数据
答案:D
第47题(1.0分)题号:708
下面判断正确的是()。
A:char *a="china";等价于char *a;*a="china";
B:char str[10]={"china"};等价于char str[10];str[]={"china"};
C:char *s="china";等价于char *s;s="china"; D:char c[4]="abc",d[4]="abc";等价于char c[4]=d[4]="abc";
答案:C
第48题(1.0分)题号:206
以下程序的输出结果是()。
main()
{ char s[]="123",*p;
p=s;
printf("%c%c%c\n",*p++,*p++,*p++);
}
A:123
B:321
C:213
D:312
答案:B【从后面开始输出的】
第49题(1.0分)题号:579
在C语言中,char型数据在内存中的存储形式是()。
A:补码
B:反码
C:原码
D:ASCII码
答案:D
第50题(1.0分)题号:211
fgets(str,n,fp)函数从文件中读入一个字符串,以下正确的叙述是()。
A:字符串读入后不会自动加入'\0'
B:fp是file类型的指针
C:fgets函数将从文件中最多读入n-1个字符D:fgets函数将从文件中最多读入n个字符答案:C
第51题(1.0分)题号:112
下列程序的输出结果是()。
main()
{char c1=97,c2=98;
printf("%d %c",c1,c2);
}
A:97 98
B:97 b
C:a 98
D:a b
答案:B
第52题(1.0分)题号:586
以下选项中合法的实型常数是()。
A:5E2.0【E后面必须是整数】
B:E-3
C:.2E0
D:1.3E
答案:C
第53题(1.0分)题号:92
以下的选择中,正确的赋值语句是()。A:a=1,b=2
B:j++
C:a=b=5;
D:y=int(x)
答案:C
第54题(1.0分)题号:740
若要打开A盘上user子目录下名为abc.txt 的文本文件进行读、写操作,
下面符合此要求的函数调用是()。
A:fopen("A:\user\abc.txt","r")
B:fopen("A:\\user\\abc.txt","r+ ")
C:fopen("A:\user\abc.txt","rb")
D:fopen("A:\\user\\abc.txt","w")
答案:B
第55题(1.0分)题号:565
以下叙述中正确的是()。
A:C语言的源程序不必通过编译就可以直接运行
B:C语言中的每条可执行语句最终都将被转换成二进制的机器指令
C:C源程序经编译形成的二进制代码可以直接运行
D:C语言中的函数不可以单独进行编译
答案:B
第56题(1.0分)题号:157
下列程序的输出结果是()。
main()
{ int x=1,y=0,a=0,b=0;
switch(x)
{
case 1:switch(y)
{
case
0:a++;break;
case
1:b++;break;
}
case 2:a++;b++;break;
case 3:a++;b++;break;
}
printf("a=%d,b=%d\n",a,b);
}
A:a=1,b=0
B:a=2,b=1
C:a=1,b=1
D:a=2,b=2
答案:B
第57题(1.0分)题号:558
int a[10]={1,2,3,4,5,6,7,8};int *p;p=&a[5];p[-3]的值是()。
A:2
B:3 C:4
D:不一定
答案:B
第58题(1.0分)题号:178
以下对C语言函数的描述中,正确的是()。A:C程序必须由一个或一个以上的函数组成B:C函数既可以嵌套定义又可以递归调用C:函数必须有返回值,否则不能使用函数
D:C程序中有调用关系的所有函数必须放在同一个程序文件中
答案:A
第59题(1.0分)题号:210
在位运算中,操作数每右移一位,其结果相当于()。
A:操作数乘以2
B:操作数除以2
C:操作数乘以16
D:操作数除以16
答案:B
第60题(1.0分)题号:674
以下错误的描述是:函数调用可以()。A:出现在执行语句中
B:出现在一个表达式中
C:做为一个函数的实参
D:做为一个函数的形参
答案:D
第61题(1.0分)题号:212
C语言中的文件类型只有()。
A:索引文件和文本文件两种
B:ASCII文件和二进制文件两种
C:文本文件一种
D:二进制文件一种
答案:B
第62题(1.0分)题号:570
以下叙述不正确的是()。
A:一个C源程序可由一个或多个函数组成B:一个C源程序必须包含一个main函数C:C程序的基本组成单位是函数
D:在C程序中,注释说明只能位于一条语句的后面
答案:D
第63题(1.0分)题号:524
与实际参数为实型数组名相对应的形式参数不可以定义为()。
A:float a[];
B:float *a;
C:float a;
D:float (*a)[3];
答案:C
第64题(1.0分)题号:659
凡是函数中未指定存储类别的局部变量,其隐含的存储类别为()。
A:自动(auto)
B:静态(static)
C:外部(extern)
D:寄存器(register)
答案:A
第65题(1.0分)题号:636
若二维数组a有m列,则在a[i][j]前的元素个数为()。
A:j*m+i
B:i*m+j
C:i*m+j-1
D:i*m+j+1
答案:B
第66题(1.0分)题号:146
用下列语句定义a,b,c,然后执行b=a、c='b'+b,则b,c的值是()。
long a=0xffffff;
int b; char c; A:0ffffff 和0x61
B:-1和98
C:-1和97
D:指向同一地址
答案:C
第67题(1.0分)题号:584
设有说明:char w;int x;float y;double z;则表达式w*x+z-y
值的数据类型为()。
A:float
B:char
C:int【DOUBLE数据类型最长】
D:double
答案:D
第68题(1.0分)题号:105
以下运算符中,优先级最高的运算符是()。A:=
B:!=
C:*(乘号)
D:()
答案:D
第69题(1.0分)题号:704
变量的指针,其含义是指该变量的()。A:值
B:地址
C:名
D:一个标志
答案:B
第70题(1.0分)题号:676
以下只有在使用时才为该类型变量分配内存的存储类说明是()。
A:auto和static
B:auto和register
C:register和static
D:extern和register
答案:B
第71题(1.0分)题号:104
以下运算符中,优先级最高的运算符是()。A:||
B:%
C:!
D:==
答案:C
第72题(1.0分)题号:504
执行以下程序段后,输出结果和a的值是()。
int a=10;
printf("%d",a++);
A:10 和10
B:10 和11
C:11 和10
D:11 和11
答案:B
第73题(1.0分)题号:613
下面有关for 循环的正确描述是()。
A:for 循环只能用于循环次数已经确定的情况
B:for 循环是先执行循环循环体语句,后判断表达式
C:在for 循环中,不能用break 语句跳出循环体
D:for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
答案:D
第74题(1.0分)题号:116
下列语句的结果是()。
main()
{ int j;
j=3;
printf("%d,",++j);
printf("%d",j++); }
A:3,3
B:3,4
C:4,3
D:4,4
答案:D
第75题(1.0分)题号:680
在调用函数时,如果实参是简单变量,它与对应形参之间的数据
传递方式是()。
A:地址传递
B:单向值传递
C:由实参传给形参,再由形参传回实参D:传递方式由用户指定
答案:B
第76题(1.0分)题号:91
以下数值中,不正确的八进制数或十六进制数是()。
A:0x16
B:16
C:-16
D:0xaaaa
答案:C
第77题(1.0分)题号:541
若有int i=3,*p;p=&i;下列语句中输出结果为3的是()。
A:printf("%d",&p);
B:printf("%d",*i);
C:printf("%d",*p);
D:printf("%d",p);
答案:C
第78题(1.0分)题号:503
以下语句中,不能实现回车换行的是()。A:printf("\n");
B:putchar("\n");
C:fprintf(stdout,"\n");
D:fwrite("\n",1,1,stdout);
答案:B
第79题(1.0分)题号:720
函数rewind 的作用是()。
A:使位置指针重新返回文件的开头
B:将位置指针指向文件中所要求的特定位置
C:使位置指针指向文件的末尾
D:使位置指针自动移至下一个字符位置
答案:A
第80题(1.0分)题号:732
若执行fopen函数时发生错误,则函数的返回值是()。
A:地址值
B:0
C:1
D:EOF
答案:B
第81题(1.0分)题号:592
能正确表示逻辑关系:"a≥10或a≤0"的C语言表达式是()。
A:a>=10 or a<=0
B:a>=0|a<=10
C:a>=10&&a<=0
D:a>=10‖a<=0
答案:D
第82题(1.0分)题号:736
以下叙述中错误的是()。
A:二进制文件打开后可以先读文件的末尾,而顺序文件不可以
B:在程序结束时,应当用fclose函数关闭已打开的文件
C:在利用fread函数从二进制文件中读数据时,可以用数组名给数组中所有元素读入数据
D:不可以用FILE定义指向二进制文件的文件指针
答案:D
第83题(1.0分)题号:123
执行下列程序后,其输出结果是()。main()
{int a=9;
a+=a-=a+a;
printf("%d\n",a);
}
A:18
B:9
C:-18
D:-9
答案:C
第84题(1.0分)题号:180
以下函数调用语句中实参的个数是()。func((e1,e2),(e3,e4,e5));
A:2
B:3
C:5
D:语法错误
答案:A
第85题(1.0分)题号:103
以下运算符中,优先级最高的运算符是()。A:*=
B:>=
C:(类型)
D:+
答案:C
第86题(1.0分)题号:610
以下选项中,与k=n++完全等价的表达式是()。
A:k=n,n=n+1
B:n=n+1,k=n
C:k=++n
D:k+=n+1
答案:A
第87题(1.0分)题号:675
关于建立函数的目的,以下正确的说法是()。
A:提高程序的执行效率
B:提高程序的可读性
C:减少程序的篇幅
D:减少程序文件所占内存
答案:B
第88题(1.0分)题号:679
在C语言中,形参的缺省存储类是()。A:auto
B:register
C:static
D:extern
答案:A
第89题(1.0分)题号:665
以下正确的说法是:在C语言中()。
A:实参和与其对应的形参各占用独立的存储单元
B:实参和与其对应的形参共占用一个存储单元
C:只有当实参和与其对应的形参同名时才共占用存储单元
D:形参是虚拟的,不占用存储单元
答案:A
第90题(1.0分)题号:703
若有以下的定义:int t[3][2];能正确表示t数组元素地址的表达式是()。
A:&t[3][2]
B:t[3]
C:&t[1]
D:t[2]
答案:D 第91题(1.0分)题号:491
下列程序段的输出结果为()。
float k=0.8567;
printf("%06.1d%%",k*100);
A:0085.6%%
B:0085.7%
C:0085.6%
D:.857
答案:B
第92题(1.0分)题号:542
若有int *p=(int *)malloc(sizeof(int));则向内存申请到内存
空间存入整数123的语句为()。
A:scanf("%d",p);
B:scanf("%d",&p);
C:scanf("%d",*p);
D:scanf("%d",**p);
答案:A
第93题(1.0分)题号:597
下列四个选项中,均是C语言关键字的选项是()。
A:auto enum include
B:switch typedef continue
C:signed union scanf
D:if struct type
答案:B
第94题(1.0分)题号:164
下列数组说明中,正确的是()。
A:static char str[]="China";
B:static char str[]; str="China";
C:static char str1[5],str2[]={"China"}; str1=str2;
D:static char str1[],str2[];str2={"China"}; strcpy(str1,str2);
答案:A
第95题(1.0分)题号:532
结构体类型的定义允许嵌套是指()。
A:成员是已经或正在定义的结构体型
B:成员可以重名
C:结构体型可以派生
D:定义多个结构体型
答案:A
第96题(1.0分)题号:526
用户定义的函数不可以调用的函数是()。A:非整型返回值的
B:本文件外的
C:main函数
D:本函数下面定义的
答案:C
第97题(1.0分)题号:643
以下能对一维数组a进行正确初始化的语句是()。
A:int a[10]=(0,0,0,0,0)
B:int a[10]={};
C:int a[]={0};
D:int a[10]={10*1};
答案:C
第98题(1.0分)题号:668
以下正确的说法是()。
A:用户若需调用标准库函数,调用前必须重新定义
B:用户可以重新定义标准库函数,若如此,该函数将失去原有含义
C:系统根本不允许用户重新定义标准库函数
D:用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调
答案:B
第99题(1.0分)题号:692 以下叙述中正确的是()。
A:在程序的一行上可以出现多个有效的预处理命令行
B:使用带参的宏时,参数的类型应与宏定义时的一致
C:宏替换不占用运行时间,只占编译时间D:在以下定义中C R 是称为"宏名"的标识符#define C R 045
答案:C
第100题(1.0分)题号:625
已知x=43,ch='A',y=0;则表达式(x>=y&&ch<'B'&&!y)的值是()。
A:0
B:语法错
C:1
D:"假"
答案:C
第101题(1.0分)题号:160
C语言的if语句嵌套时,if与else的配对关系是()。
A:每个else总是与它上面的最近的if配对B:每个else总是与最外层的if配对
C:每个else与if的配对是任意的
D:每个else总是与它上面的if配对
答案:A
第102题(1.0分)题号:544
char *s1="hello",*s2;s2=s1;则()。
A:s2指向不确定的内存单元
B:不能访问"hello"
C:puts(s1);与puts(s2);结果相同
D:s1不能再指向其它单元
答案:C
第103题(1.0分)题号:213
C语言中,文件由()。
A:记录组成
B:由数据行组成
C:由数据块组成
D:由字符(字节)序列组成
答案:D
第104题(1.0分)题号:98
以下标识符中,不能作为合法的C用户定义标识符的是()。
A:For
B:Printf
C:WORD
D:sizeof
答案:D
第105题(1.0分)题号:619
对for(表达式1; ;表达式3) 可理解为()。A:for(表达式1;0;表达式3)
B:for(表达式1;1;表达式3)
C:for(表达式1;表达式1;表达式3)
D:for(表达式1;表达式3;表达式3)
答案:B
第106题(1.0分)题号:637
若有说明:int a[3][4];则数组a中各元素()。A:可在程序的运行阶段得到初值0
B:可在程序的编译阶段得到初值0
C:不能得到确定的初值
D:可在程序的编译或运行阶段得到初值0
答案:D
第107题(1.0分)题号:135
已知字母a的ASCII十进制代码为97,则执行下列语句后的输出结果为()。
char a='a'; a--;
printf("%d,%c\n",a+'2'-'0',a+'3'-'0');
A:b,c
B:a--运算不合法,故有语法错
C:98,c
D:格式描述和输出项不匹配,输出无定值
答案:C 第108题(1.0分)题号:615
C语言中while 和do-while 循环的主要区别是()。
A:do-while 的循环体至少无条件执行一次B:while的循环控制条件比do-while的循环控制条件更严格
C:do-while 允许从外部转到循环体内
D:do-while 的循环体不能是复合语句
答案:A
第109题(1.0分)题号:650
若有说明: int a[][4]={0,0};则下面不正确的叙述是()。
A:数组a的每个元素都可得到初值0
B:二维数组a的第一维大小为1
C:因为二维数组a中第二维大小的值除经初值个数的商为1,故数组a的行数为1
D:有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0
答案:D
第110题(1.0分)题号:97
以下不正确的叙述是()。
A:在C程序中所用的变量必须先定义后使用B:程序中,APH和aph是两个不同的变量C:若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变
D:当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值
答案:D
第111题(1.0分)题号:727
以下read函数的调用形式中,参数类型正确的是()。
A:read(int fd,char *buf,int count)
B:read(int *buf,int fd,int count)
C:read(int fd,int count,char *buf)
D:read(int count,char *buf,int fd)
答案:A
第112题(1.0分)题号:599
假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是()。
A:7
B:8
C:6
D:2
答案:B
第113题(1.0分)题号:700
设p1和p2是指向同一个字符串的指针变量,c为字符变量,则以下
不能正确执行的赋值语句是()。
A:c=*p1+*p2;
B:p2=c;
C:p1=p2;
D:c=*p1*(*p2);
答案:B
第114题(1.0分)题号:502
下列表达式中,可作为C合法表达式的是()。
A:[3,2,1,0]
B:(3,2,1,0)
C:3=2=1=0
D:3/2/1/0
答案:B
第115题(1.0分)题号:505
以下语句中,循环次数不为10次的语句是()。
A:for(i=1;i<10;i++);
B:i=1;do{i++;}while(i<=10);
C:i=10;while(i>0){--i;}
D:i=1;m:if(i<=10){i++;goto m;}
答案:A
第116题(1.0分)题号:707 若有说明:int *p1,*p2,m=5,n;以下均是正确赋值语句的选项是()。
A:p1=&m;p2=&p1
B:p1=&m;p2=&n;*p1=*p2;
C:p1=&m;p2=p1;
D:p1=&m;*p2=*p1;
答案:C
第117题(1.0分)题号:118
已知year为整型变量,不能使表达式(year%4==0&&year%100!=0)
||year%400==0的值为“真”的数据是()。A:1990
B:1992
C:1996
D:2000
答案:A
第118题(1.0分)题号:200
若有定义:char *p1,*p2,*p3,*p4,ch;
则不能正确赋值的程序语句为()。
A:p1=&ch; scanf("%c",p1);
B:p2=(char *)malloc(1);scanf("%c",p2);
C:*p3=getchar();
D:p4=&ch;*p4=getchar();
答案:C
第119题(1.0分)题号:686
在位运算中,操作数每右移一位,其结果相当于()。
A:操作数乘以2
B:操作数除以2
C:操作数除以4
D:操作数乘以4
答案:B
第120题(1.0分)题号:173
C语言执行程序的开始执行点是()。
A:程序中第一条可以执行语言
B:程序中第一个函数
C:程序中的main函数
D:包含文件中的第一个函数
答案:C
第121题(1.0分)题号:673
C语言规定,函数返回值的类型是由()。A:return语句中的表达式类型所决定
B:调用该函数时的主调函数类型所决定C:调用该函数时系统临时决定
D:在定义该函数时所指定的函数类型所决定
答案:D
第122题(1.0分)题号:193
具有相同类型的指针变量p与数组a,不能进行的操作是()。
A:p=a;
B:*p=a[0];
C:p=&a[0];
D:p=&a;
答案:D
第123题(1.0分)题号:601
下面四个选项中,均是不合法的浮点数的选项是()。
A:160. 0.12 e3
B:123 2e4.2 .e5
C:-.18 123e4 0.0
D:-e3 .234 1e3
答案:B
第124题(1.0分)题号:141
为了提高程序的运行速度,在函数中对于整型或指针可以使用()型的变量。
A:auto
B:register
C:static
D:extern
答案:B 第125题(1.0分)题号:603
以下符合C语言语法的赋值表达式是()。A:d=9+e+f=d+9
B:d=9+e,f=d+9
C:d=9+e,e++,d+9
D:d=9+e++=d+7
答案:B
第126题(1.0分)题号:689
以下叙述中不正确的是()。
A:预处理命令行都必须以#号开始
B:在程序中凡是以#号开始的语句行都是预处理命令行
C:C程序在执行过程中对预处理命令行进行处理
D:以下是正确的宏定义#define IBM_PC
答案:C
第127题(1.0分)题号:639
以下能正确定义数组并正确赋初值的语句是()。
A:int N=5,b[N][N];
B:int a[1][2]={{1},{3}};
C:int c[2][]={{1,2},{3,4}};
D:int d[3][2]={{1,2},{34}};
答案:D
第128题(1.0分)题号:125
下列程序的输出结果是()。
main()
{int a=7,b=5;
printf("%d\n",b=b/a);
}
A:0
B:5
C:1
D:不确定值
答案:A
第129题(1.0分)题号:651
以下定义语句中,错误的是()。
A:int a[]={1,2};
B:char *a[3];
C:char s[10]="test";
D:int n=5,a[n];
答案:D
第130题(1.0分)题号:167
下列语句中,不正确的是()。
A:static char a[2]={1,2};
B:static int a[2]={'1','2'};
C:static char a[2]={'1','2','3'};
D:static char a[2]={'1'};
答案:C
第131题(1.0分)题号:705
若有语句int *point,a=4;和point=&a;下面均代表地址的一组选项是()。
A:a,point,*&a
B:&*a,&a,*point
C:*&point,*point,&a
D:&a,&*point,point
答案:D
第132题(1.0分)题号:128
若int类型数据占两个字节,则下列语句的输出为()。
int k=-1; printf("%d,%u\n",k,k);
A:-1,-1
B:-1,32767
C:-1,32768
D:-1,65535(%u为无符号十进制输出范围0~65535)
答案:D
第133题(1.0分)题号:170
关于return语句,下列正确的说法是()。A:在主函数和其他函数中均可出现B:必须在每个函数中出现
C:可以在同一个函数中出现多次
D:只能在除主函数之外的函数中出现一次答案:C
第134题(1.0分)题号:143
C 语言中以下几种运算符的优先次序()的排列是正确的。
A:由高到低为:!,&&,||,算术运算符,赋值运算符
B:由高到低为:!,算术运算符,关系运算符,&&,||,赋值运算符
C:由高到低为:算术运算符,关系运算符,赋值运算符,!,&&,||
D:由高到低为:算术运算符,关系运算符,!,&&,||,赋值运算符
答案:B
第135题(1.0分)题号:499
以下常量中,能够代表逻辑“真”值的常量是()。
A:\0'
B:0
C:0'
D:NULL
答案:C
第136题(1.0分)题号:620
下列运算符中优先级最高的是()。
A:<
B:+
C:&&
D:!=
答案:B
第137题(1.0分)题号:733
以下叙述中不正确的是()。
A:C语言中的文本文件以ASCⅡ码形式存储数据
B:C语言中对二进制文件的访问速度比文本
文件快
C:C语言中,随机读写方式不适用于文本文件
D:C语言中,顺序读写方式不适用于二进制文件
答案:D
第138题(1.0分)题号:134
若a是float型变量,b是unsigned型变量,以下输入语句中合法的是()。
A:scanf("%6.2f%d",&a,&b);
B:scanf("%f%n",&a,&b);
C:scanf("%f%3o",&a,&b);
D:scanf("%f%f",&a,&b);
答案:C
第139题(1.0分)题号:150
经过以下语句定义后,表达式z+=x>y?++x:++y的值为()。
int x=1,y=2,z=3;
A:2
B:3
C:6
D:5
答案:C
第140题(1.0分)题号:436
设j和k都是int类型,则for循环语句()。for(j=0,k=0;j<=9&&k!=876;j++)
scanf("%d",&k);
A:最多执行10次
B:最多执行9次
C:是无限循环
D:循环体一次也不执行
答案:A
第141题(1.0分)题号:657
以下不能正确进行字符串赋初值的语句是()。
A:char str[5]="good!"; B:char str[]="good!";
C:char *str="good!";
D:char str[5]={'g','o','o','d'};
答案:A
第142题(1.0分)题号:617
执行语句for(i=1;i++<4;); 后变量i 的值是()。
A:3
B:4
C:5
D:不定
答案:C
第143题(1.0分)题号:184
下列定义不正确的是()。
A:#define PI 3.141592
B:#define S345
C:int max(x,y); int x,y; { }
D:static char c;
答案:C
第144题(1.0分)题号:197
以下程序段的输出结果是()。
char *alp[]={"ABC","DEF","GHI"}; int j; puts(alp[1]);
A:A
B:B
C:D
D:DEF
答案:D
第145题(1.0分)题号:713
在说明语句:int *f();中,标识符f代表的是()。
A:一个用于指向整型数据的指针变量
B:一个用于指向一维数组的行指针
C:一个用于指向函数的指针变量
D:一个返回值为指针型的函数名
答案:D
第146题(1.0分)题号:101
以下数据中,不正确的数值或字符常量是()。
A:8.9e1.2
B:10
C:0xff00
D:82.5
答案:A
第147题(1.0分)题号:520
以下程序段的输出结果为()。
char c[]="abc";
int i=0;
do ;while(c[i++]!='\0');printf("%d",i-1);
A:abc
B:ab
C:2
D:3
答案:D
第148题(1.0分)题号:573
C语言中运算对象必须是整型的运算符是()。
A:%=
B:/
C:=
D:〈=
答案:A
第149题(1.0分)题号:501
下列程序段的输出结果为()。
int a=7,b=9,t;
t=a*=a>b?a:b; printf("%d",t);
A:7
B:9
C:63
D:49
答案:C
第150题(1.0分)题号:730
若以"a+"方式打开一个已存在的文件,则以下叙述正确的是()。
A:文件打开时,原有文件内容不被删除,位置指针移到文件末尾,可作添加和读操作
B:文件打开时,原有文件内容不被删除,位置指针移到文件开头,可作重写和读操作
C:文件打开时,原有文件内容被删除,只可作写操作
D:以上各种说法皆不正确
答案:A
第151题(1.0分)题号:695
以下叙述中不正确的是()。
A:表达式a&=b等价于a=a&b
B:表达式a|=b等价于a=a|b
C:表达式a!=b等价于a=a!b
D:表达式a^=b等价于a=a^b
答案:C
第152题(1.0分)题号:698
整型变量x和y的值相等、且为非0值,则以下选项中,结果为零的
表达式是()。
A:x || y
B:x | y
C:x & y
D:x ^ y
答案:D
第153题(1.0分)题号:683
在C语言中,要求运算数必须是整型或字符
型的运算符是()。
A:&&
B:&
C:!
D:||
答案:B
第154题(1.0分)题号:723
函数调用语句:fseek(fp,-20L,2);的含义是()。A:将文件位置指针移到距离文件头20个字节处
B:将文件位置指针从当前位置向后移动20个字节
C:将文件位置指针从文件末尾处退后20个字节
D:将文件位置指针移到离当前位置20个字节处
答案:C
第155题(1.0分)题号:604
下面不正确的字符串常量是()。
A:'abc'
B:"12'12"
C:"0"
D:" "
答案:A
第156题(1.0分)题号:653
以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是()。
A:char s[10]="abcdefg";
B:char t[]="abcdefg",*s=t;
C:char s[10];s="abcdefg";
D:char s[10];strcpy(s,"abcdefg");
答案:C
第157题(1.0分)题号:717
fscanf函数的正确调用形式是()。
A:fscanf(fp,格式字符串,输出表列);
B:fscanf(格式字符串,输出表列,fp); C:fscanf(格式字符串,文件指针,输出表列); D:fscanf(文件指针,格式字符串,输入表列);
答案:D
第158题(1.0分)题号:181
C语言中函数调用的方式有()。
A:函数调用作为语句一种
B:函数调用作为函数表达式一种
C:函数调用作为语句或函数表达式两种D:函数调用作为语句、函数表达式或函数参数三种
答案:D
第159题(1.0分)题号:642
在C语言中,一维数组的定义方式为:类型说明符数组名()。
A:[常量表达式]
B:[整型表达式]
C:[整型常量]或[整型表达式]
D:[整型常量]
答案:D
第160题(1.0分)题号:634
以下不正确的定义语句是()。
A:double x[5]={2.0,4.0,6.0,8.0,10.0};
B:int y[5]={0,1,3,5,7,9};
C:char c1[]={'1','2','3','4','5'};
D:char c2[]={'\x10','\xa','\x8'};
答案:B
第161题(1.0分)题号:113
执行下列语句后变量x和y的值是()。
y=10;x=y++;
A:x=10,y=10
B:x=11,y=11
C:x=10,y=11
D:x=11,y=10
答案:C
一、单项选择题 1. 软件危机具有下列表现( d )。 I. 对软件开发成本估计不准确II. 软件产品的质量往往靠不住 III. 软件常常不可维护IV. 软件成本逐年上升 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 2. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是( A )。 A. 运行和维护阶段 B. 设计阶段 C. 代码实现阶段 D. 测试阶段 3. 下列属于软件的特点的是( D )。 A. 软件是一种逻辑实体,具有抽象性 B. 软件在使用过程中没有磨损、老化的问题 C. 软件不同于一般程序,它的一个显着特点是规模庞大,复杂程度高 D. 以上都正确 4. 软件工程的出现是由于( D )。 A. 软件危机的出现 B. 计算机硬件技术的发展 C. 软件社会化的需要 D. 计算机软件技术的发展 5. 软件开发技术不包含( d )。 A. 软件开发方法学 B. 软件工程环境 C. 软件工具 D. 软件质量度度量 6. 软件工程的课程特点( D )。 I. 学科理论及其知识应用的多维性 II. 工程化 III. 浓厚的方法学色彩 IV. 实践性、指导性强 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 7. 下列属于应用软件的是( b )。 I. 计算机辅助教学软件II. 软件测试工具 III. 办公自动化软件IV. 工程与科学计算软件 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 8. 需求分析阶段最重要的技术文档是( b )。
C语言基本选择题及参考 答案 The pony was revised in January 2021
计算机程序设计基础(C语言) 单项选择练习题 一、基本概念 1.C语言程序是由C构成的。 A)一些可执行语言B)main函数C)函数D)包含文件中的第一个函数2.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 3.C语言程序从C开始执行。 A)程序中第一条可执行语句?B)程序中第一个函数 C)程序中的main函数?D)包含文件中的第一个函数 4.C语言程序从main()函数开始执行,所以这个函数要写在_D___。 A)程序文件的开始B)程序文件的最后 C)它所调用的函数的前面D)程序文件的任何位置 5、以下说法中正确的是(C)。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main()函数中定义
C、C语言程序总是从main()函数开始执行 D、C语言程序中的main()函数必须放在程序的开始部分 6.下列方法中错误的是(D)。 A.主函数可以分为两个部分:主函数说明部分和主函数体。 B.主函数可以调用任何非主函数的其它函数。 C.任何非主函数可以调用其它任何非主函数。 D.程序可以从任何非主函数开始执行。 7.下列说法错误的是:(B) A.C程序运行步骤是编辑、编译、连接、执行。 B.C语言的变量名必须用小写,常量用大写。 C.C语言的三种基本结构是顺序、选择、循环。 D.C程序一定由函数构成的。 8.下列关于C语言的说法错误的是(B)。 A)C程序的工作过程是编辑、编译、连接、运行 B)C语言不区分大小写。 C)C程序的三种基本结构是顺序、选择、循环
C语言函数练习题 一、选择题 1. 一个完整的C源程序是【】。 A)要由一个主函数或一个以上的非主函数构成 B)由一个且仅由一个主函数和零个以上的非主函数构成 C)要由一个主函数和一个以上的非主函数构成 D)由一个且只有一个主函数或多个非主函数构成 2. 以下关于函数的叙述中正确的是【】。 A)C语言程序将从源程序中第一个函数开始执行 B )可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行 C)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束 D)m ain可作为用户标识符,用以定义任意一个函数 3. 以下关于函数的叙述中不正确的是【】。 A)C程序是函数的集合,包括标准库函数和用户自定义函数 B)在C语言程序中,被调用的函数必须在main函数中定义 C)在C语言程序中,函数的定义不能嵌套 D)在C语言程序中,函数的调用可以嵌套 4. 在一个C程序中,【】。 A)main函数必须出现在所有函数之前 B)main函数可以在任何地方出现 C)m ain函数必须出现在所有函数之后 D)m ain函数必须出现在固定位置 5. 若在C语言中未说明函数的类型,则系统默认该函数的数据类型是【】 A)float B)long C)int D)double 6. 以下关于函数叙述中,错误的是【】。 A)函数未被调用时,系统将不为形参分配内存单元 B)实参与形参的个数应相等,且实参与形参的类型必须对应一致 C)当形参是变量时,实参可以是常量、变量或表达式 D )形参可以是常量、变量或表达式 7. 若函数调用时参数为基本数据类型的变量,以下叙述正确的是【】。 A)实参与其对应的形参共占存储单元 B)只有当实参与其对应的形参同名时才共占存储单元 C)实参与对应的形参分别占用不同的存储单元 D)实参将数据传递给形参后,立即释放原先占用的存储单元 9. 函数调用时,当实参和形参都是简单变量时,他们之间数据传递的过程是【】。 A)实参将其地址传递给形参,并释放原先占用的存储单元 B)实参将其地址传递给形参,调用结束时形参再将其地址回传给实参 C)实参将其值传递给形参,调用结束时形参再将其值回传给实参
一、单项选择题 1.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从C开始执行。 A) 程序中第一条可执行语句B) 程序中第一个函数 C) 程序中的main函数D) 包含文件中的第一个函数 3、以下说法中正确的是(C)。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B )。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C)。 A.-a1 B.a[i] C.a2_i D.int t 6.下列C语言用户标识符中合法的是(B)。 A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是(C)。 A)%x B)a+b C)a123 D)123 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 9.C语言中的简单数据类型包括(D)。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是C。 A)2.5 B)2 C)1 D)3 11.如果int a=3,b=4;则条件表达式"aC语言基础练习100题(含答案)
C语言基础练习100题(含答案) 欧阳学文 雷柳青编排 1、下面程序的输出是________ #include
大学C语言考试题库 第1章 C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. A B. B C. D D. E (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 32 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系
精选考试类应用文档,如果您需要使用本文档,请点击下载,另外祝您生活愉快,工作顺利,万事如意! 精选考试类文档,如果需要,请下载,希望能帮助到你们! 2020最新C语言考试题库及答案
姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题吧。加油! 一单项选择题 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’ ’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串
在C语言中,用单引号标识字符;用双引号标识字符串 选项B,C,分别用{}和’’标识字符串 选项D,标识字符。 3、以下说法中正确的是( C )。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是( B )。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C )。 A.-a1 B.a[i] C.a2_i D.int t 6.下列C语言用户标识符中合法的是( B )。
A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是( C )。 A) %x B) a+b C) a123 D) 123 8、下列四组字符串中都可以用作C语言程序中的标识符的是( A )。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。 A)2.5 B)2 C)1 D)3 11.如果int a=3,b=4;则条件表达式"aC语言单项选择题
单项选择题(本大题共20小题,每小题1分,共20分) 1.C++源程序文件扩展名为(A) A..cpp B..h C..1ib D..obj 5.对使用关键字new所开辟的动态存储空间,释放时必须使用(C)A.free B.create C.delete D.realse 6.从本质上看,引用是被引用变量的(B) A.拷贝 B.别名 C.复制 D.克隆 7.在函数调用时,如某一默认参数要指明一个特定值,则有(B) A.其之前所有参数都必须赋值B.其之后所有参数都必须赋值 C.其前、后所有参数都必须赋值D.其前、后所有参数都不必赋值 8.设存在函数int max(int,int)返回两参数中较大值,若求22,59,70三者中最大值,下列表达式不正确的是(C) A.int m=max(22,max(59,70));B.int m=max(max(22,59),70); C.int m=max(22,59,70);D.int m=max(59,max(22,70)); 9.设存在函数int min(int,int)返回两参数中较小值,若求15,26,47三者中最小值,下列表达式中错误的是(B) A.int m=min(min(15,26),min(15,47)); B.int m=min(15,26,47); C.int m=min(15,min(47,26)); D.int m=min(min(47,26),16); 13.函数int&min(int&,int&)返回参数中较小者,设有两整型变量int a=10;int b=15; 在执行语句min(a,b)--;之后,a,b值分别为(B) A.9,14 B.9,15 C.10,14 D.10,15 16.设函数void swap(int&,int&)将交换两形参的值,如两整型变量int a=10;int b=15;则执行swap(a,b)后,a、b值分别为(C) A.10,10 B.10,15 C.15,10 D.15,15
1 C语言程序由函数组成,以下说法正确的是( A ). A)主函数可以在其它函数之前,函数内不可以嵌套定义函数 B)主函数可以在其它函数之前,函数内可以嵌套定义函数 C)主函数必须在其它函数之前,函数内不可以嵌套定义函数 D)主函数必须在其它函数之前,函数内可以嵌套定义函数 2 以下说法中不正确的是( A )。 A) 主函数main中定义的变量在整个文件或程序中有效 B) 不同的函数中可以使用相同名字的变量 C) 形式参数是局部变量 D) 在一个函数内部,可以在复合语句中定义变量,这些变量只在本复合语句中有效 3 下面函数 f(double x) {printf(“%6d\n”,x);} 的类型为( C ). A) 实型B)void 类型C)int 类型D) A)、B)、C)均不正确 4 以下说法中正确的是( C ). A)C语言程序总是从第一个定义的函数开始执行 B)在C语言程序中,要调用的函数必须在main函数中定义 C)C语言程序总是从main函数开始执行
D)C语言程序中,main函数必须放在程序的开始部分 5 以下正确的函数定义是( C ). A) double fun(int x,int y); {int z; z=x+y; return z;} B) fun(int x,y) {int z; return z;} C) double fun(int x,int y) {double z; z=x+y; return z;} D) double fun( x, y) {int x,y; double z; z=x+y; return z;} 6 定义为void类型的函数,其含义是( A ). A)调用函数后,被调用的函数没有返回值 B)调用函数后,被调用的函数不返回 C)调用函数后,被调用的函数的返回值为任意的类型D)以上三种说法都是错误的 7 设有如下定义: int x=10,y=3,z ; 则语句
1单选题 1.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从C开始执行。 A) 程序中第一条可执行语句B) 程序中第一个函数 C) 程序中的main函数D) 包含文件中的第一个函数 3、以下说法中正确的是(C)。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B)。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C)。 A.-a1 B.a[i] C.a2_i D.int t 5~8题为相同类型题 考点:标识符的命名规则 (1)只能由字母、数字、下划线构成 (2)数字不能作为标识符的开头 (3)关键字不能作为标识符 选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3) 6.下列C语言用户标识符中合法的是(B)。 A)3ax B)x C)case D)-e2 E)union 选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1); 7.下列四组选项中,正确的C语言标识符是(C)。 A)%x B)a+b C)a123 D)123 选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2) 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3) 9.C语言中的简单数据类型包括(D)。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是C。 A)2.5 B)2 C)1 D)3 详见教材P52~53.
计算机程序设计基础(C语言) 单项选择练习题 一、基本概念 1. C语言程序是由构成的。 A)一些可执行语言 B)main函数C)函数 D)包含文件中的第一个函数 2. 是构成C语言程序的基本单位。 A)函数 B)过程 C)子程序 D)子例程 3.C语言可执行程序从开始执行。 A) 程序中第一条可执行语句 B) 程序中第一个函数 C) 程序中的main函数 D) 包含文件中的第一个函数 4.C语言程序从main()函数开始执行,所以这个函数要写在____。 A) 程序文件的开始 B) 程序文件的最后 C) 它所调用的函数的前面 D) 程序文件的任何位置 5. 以下说法中正确的是。 A)C语言程序总是从第一个定义的函数开始执行 B)在C语言程序中,要调用的函数必须在main( )函数中定义 C)C语言程序总是从main( )函数开始执行 D)C语言程序中的main( )函数必须放在程序的开始部分 6. 下列方法中错误的是。 A)主函数可以分为两个部分:主函数说明部分和主函数体。 B)主函数可以调用任何非主函数的其它函数。 C)任何非主函数可以调用其它任何非主函数。 D)程序可以从任何非主函数开始执行。 7.下列关于C语言的说法错误的是。 A) C程序的工作过程是编辑、编译、连接、运行 B) 标识符的命名由英文字母、数字和下划线组成,与字母的大小写无关 C) C程序的三种基本结构是顺序、选择、循环 D) 一个C程序总是从main函数开始执行的 8. 系统默认的C语言源程序扩展名为.C,需经过之后,生成.exe文件,才能运行? A) 编辑?编译 B )编辑?连接 C) 编译?连接 D) 编辑?改错 9.下列说法中正确的是。 A)由于C源程序是高级语言程序,因此一定要在TC软件中输入。 B)由于C源程序是由字符流组成的,因此可以作为文本文件在任何文本编辑的软件中输入。 C)由于C程序是高级语言程序,因此输入后即可执行。 D)由于C程序是高级语言程序,因此它是由命令组成的。
选择题复习 1.表达式“(a=4*5, b=a*2), b-a, a+=2”的值是(C)。 A.2 B.20 C.22 D.42 2.以下是一个自定义函数的头部,其中正确的是(C )。 A.int fun(int a[ ], b) B.int fun(int a[ ], int a) C.int fun(int*a, int b) D.int fun(char a[ ][ ], int b) 3.以下数组声明语句中正确的是(D )。 A.int n, a[n]; B.int a[ ]; C.int a[2][3]={{l},{2},{3}}; D.int a[ ][3]={{l},{2},{3}}; 4.已知在某C语言编译系统中表达式sizeof(int)的值是2,如果希望将常量-70 000正确地保存在一个变量a中,该变量声明语句应当是(B )。 A.int a; B.long int a; C.unsigned int a; D.unsigned int a; 5.以下声明语句中,用于声明一个行指针变量的是(C )。 A.int *p(int); B.int *p; C.int (*p)[3]; D.int (*p)(int); 6.在以下程序中,需要在fun函数中声明一个int型的变量,以下选项中(A )不能用做该变量的名字。 #include
C语言试题 ★第1 题: 阅读程序,选择程序的运行结果___A___。 #include
char *p=”abcdefghijklmnopq”; main() { while(*p++!=?e?) ; printf(“%c\n”, *p); } A. c B. d C. e D. f ★第6 题: 阅读程序,选择程序的输出结果___D___。 #include
《C 语言程序设计》期末试卷 一、单项选择题(10x2’=20’) 1、以下叙述正确的是( ) A )C 语言的源程序不必通过编译就可以直接运行。 B ) C 语言中的每条可执行语句最终都将被转换成二进制的机器指令。 C )C 语言源程序经编译形成的二进制代码可以直接运行。 D )C 语言中的函数不可以单独进行编译。 2、一个C 语言的源程序中( ) A )必须有一个主函数 B )可能有多个主函数 C )必须有除主函数外其它函数 D )可以没有主函数 3、以下不能定义为用户标识符的是( ) A )scanf B )Void C )_3com D )int 4、若以下选项中的变量已正确定义,则正确的赋值语句是( ) A )x1=26.8%3; B )1+2=x2; C )x3=0x12; D )x4=1+2=3; 5、设有定义:float a=2,b=4,h=3;以下C 语言表达式中与代数式h b a *)(2 1 的计算结果不. 相符的是( ) A )(a+b)*h/2 B )(1/2)*(a+b)*h C )(a+b)*h*1/2 D )h/2*(a+b) 6、C 语言中用于结构化程序设计的3种基本结构是( ) A )顺序结构、选择结构、循环结构 B )if 、switch 、break C )for 、while 、do-while D )if 、for 、continue 7.在while (!x )语句中的!x 与下面条件表达式等价的是( ) A) x!=0 B) x==1 C) x!=1 D) x==0 8、有以下程序: #include
1﹑以下选项中不合法的用户标识符是( C )。 A)_123 B)PP C)A$ D)Dim 2﹑C语言提供的合法数据关键字是( A )。 A)float B) Sagned C) Integer D) ing 3﹑判断char型变量c1是否为小写字母的正确表达式为( D )。 A) 'a'<=c1<='z' B) (c1>=A. &&(c1<='z') C) ('a'>=c1)||('z'<=c1) D) (c1>='a')&&(c1<='z') 4﹑C语言可执行程序开始执行点为( C ). A)程序中第一条可执行语句B) 程序中第一个函数 C)程序中的main函数D) 包含文件中的第一个函数 @ 5﹑以下说法中正确的是( C ). A)C语言程序总是从第一个定义的函数开始执行 B)在C语言程序中,要调用的函数必须在main函数中定义 C)C语言程序总是从main函数开始执行 D)C语言程序中,main函数必须放在程序的开始部分 6﹑设有定义:int a=1,b=2,c=3;,以下语句中执行效果与其它三个不同的是( C )。A)if(a>b) c=a,a=b,b=c; B)if(a>b) {c=a,a=b,b=c;} C)if(a>b) c=a;a=b;b=c; D)if(a>b) {c=a;a=b;b=c;} 7﹑若有说明和语句: int a=5,b; b=a++; 此处变量b的值是( C )。 A)7 B)6 C)5 D) 8﹑以下程序的输出结果是( D )。 ~ int x=10,y=10; printf("%d %d\n",x--,--y); A) 10 10 B) 9 9 C) 9 10 D) 10 9 9﹑C语言用( C )表示逻辑“真”值。 A)true B)t或y C)非零整数值D)整数0 10﹑指出下面正确的输入语句( B )。 A) scanf("a=b=%d",&a,&b) ; B) scanf("%d,%d",&a,&b) ; C) scanf("%c",c) ; D) scanf("% f%d\n",&f) ; 11﹑若x=5,y=3 则y*=x+5; y的值为(D )。 A)10 B)20 C)15 D)30 · 12﹑设整型变量n的值为2,执行语句"n+=n-=n*n;"后,n的值是( C )。 A)0 B)4 C)- 4 D)2 13﹑以下程序的运行结果是( D )。 void main() { int a=65; char c=’A’;
★第1 题: 阅读程序,选择程序的运行结果___A___。 #include
g=f; c=(*g)(a,b); printf(“%d\n”, c); } A. 1 B. 2 C. 3 D. 前面3个答案均是错误的 第4 题: 阅读程序,选择程序的输出结果__D___。#include
大学C语言考试题库 第1章C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. A B. B C. D D. E (2) 在C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于C 源程序是高级语言程序,因此一定要在TC 软件中输入 B. 由C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和0 个或多个函数组成 B. C 语言程序由主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有32 个关键字和9 种控制语句。
(2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在C 语言程序中允许出现的字符集是ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以/* 符号作为开始标记,以*/ 符号作为结束标记。 第2章数据类型运算符和表达式习题 1. 单项选择题 (1) 以下选项中,正确的C 语言整型常量是 D 。 A. 32L B. 510000 C. -1.00 D. 567 (2) 以下选项中, D 是不正确的C 语言字符型常量。 A. 'a' B. '\x41' C. '\101' D. "a" (3) 在C 语言中,字符型数据在计算机内存中,以字符的 C 形式存储。 A. 原码 B. 反码 C. ASCII 码 D. BCD码 (4) 字符串的结束标志是 C 。 A. 0 B. '0' C. '\0' D. "0" (5) 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为 B 。 A. 算术运算、赋值运算、关系运算 B. 算术运算、关系运算、赋值运算 C. 关系运算、赋值运算、算术运算 D. 关系运算、算术运算、赋值运算 (6) 逻辑运算符中,运算优先级按从高到低依次为 D 。 A. &&,!,|| B. ||,&&,! C. &&,||,! D. !,&&,|| (7) 表达式!x||a==b 等效于 D 。 A. !((x||a)==b) B. !(x||y)==b C. !(x||(a==b)) D. (!x)||(a==b) (8) 设整型变量m,n,a,b,c,d 均为1,执行(m=a>b)&&(n=c>d)后, m,n 的值是 A 。 A. 0,0 B. 0,1 C. 1,0 D. 1,1
单项选择题 导读:单项选择题要求从给出的四个备选答案中,选出一个最符合题意的答案。本类习题主要检查对C语言基本概念的掌握情况,读者可根据学习进度选做部分习题。在完成习题的过程中,不但要选出正确的答案,而且要清楚不正确的选项错在何处,以加深对概念的理解。对于掌握不准的问题, 应该通过上机实验来检验。 【1.1】以下不正确的C语言标识符是____。 A) int B) a_1_2 C) ab1exe D) _x 【1.2】以下是正确的C语言标识符是____。 A) #define B) _123 C) %d D) \n 【1.3】下列四组字符串中都可以用作C语言程序标识符的一组是。 ??? A) print B) i\am C) Pxq D) str_l ??? _3d one_half My->book Cpp ??? oodb start$it line# pow ??? aBc 3pai His.age while
【1.4】下面各选项组中,均是C语言关键字的组是。 A) auto,enum,include B) switch,typedef,continue C) signed,union,scanf D) if,struct,type 【1.5】下列不属于C语言关键字的是。A) default B) register C) enum D) external 【1.6】C语言程序从main()函数开始执行,所以这个函数要写在____。 A) 程序文件的开始B) 程序文件的最后 C) 它所调用的函数的前面D) 程序文件的任何位置 【1.7】下列关于C语言的叙述错误的是____ A) 大写字母和小写字母的意义相同 B) 不同类型的变量可以在一个表达式中 C) 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型 D) 同一个运算符号在不同的场合可以有不同的含义
c语言单项选择题标准化考试系统设计课程设计任务书 学院、系: 专业: 学生姓名: 学号: 设计题目: 单项选择题标准化考试系统设计 起迄日期: 指导教师: 1.设计目的 设计单项选择题标准化考试系统。 2 任务概述 (1)用文件保存试题库(每个试题包括题干、4个备选答案、标准答案). (2)试题录入:可随时在试题库中增加试题. (3)试题抽取:每次从试题库中可以随机抽出N道题(N由键盘输入). (4)答题:用户可以输入自己的答案. (5)自动判卷:系统可根据用户答案与标准答案的对比实现判卷并给出成绩. 3 模块划分 单项选择体标准化考试系统 判退添显答卷出加示题系试试统题题 到库 试题库 4主要函数说明及N-S图 (1)菜单Menu():用来给用户提供选项; 输出菜单界面
输入选项 输入1 N Y 添加Add 输入2 N Y ()函数 添加Put输入3 N Y ()函数 添加输入4 N Y Ask()函数 exit(0) break break break (2)Read()函数:用于打开文件; FILE *fp ,int i=0 break fp=fopen("单项选择题标准化考试系统设计.txt","r+") Y if(fp==NULL) N printf("文件打开失败"); return 0; for(i=0;!feof(fp);i++) fprintf(fp,"%s %s %s %s %s %c\n",que[i].topic,que[i].a1,que[i] .a2,que[i].a3,que[i].a4,que[i].real); fclose(fp) return i (3)Save()函数:用于添加试题后保存试题; FILE *fp int i=0 if((fp=fopen(“单项选择题标准化考试系统设计.txt”))==Null) Y N printf(“文件打开失败~”) i=0;i