通过海量题库、编程比赛和实时排名,系统化提升您的编程能力。
第1题
C语言源程序文件经过C编译程序编译后生成的目标文件的后缀为( )。
.exe
.c
.obj
.bas
第2题
若以下变量均是整型,且num=sum=7;则计算表达式sum=num++,sum++,++num后sum的值为( )。
7
8
9
10
第3题
已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'。执行语句printf("%d,%d",c1,c2-2);后,输出结果是( )。
65,66
65,68
A,68
A,B
第4题
void main() { int x=1,a=0,b=0; switch (x) { case 0: b++; case 1: a++; case 2: a++;b++; } printf("a=%d,b=%d",a,b); }
该程序的输出结果是( )
a=1,b=1
a=1,b=0
a=2,b=2
a=2,b=1
第5题
下列程序的输出为( )。
void main() { int y=10; while(y--); printf("y=%d\n",y); }
y=-1
y=0
y=1
while构成无限循环
第6题
int a[10];合法的数组元素的最小下标值为( )。
1
0
第7题
下述程序的输出结果是( )。
void prt(int *x) { printf("%d",++*x); } main() { int y=30; prt(&y); }
32
30
29
31
第8题
file1.c中有命令,#include <file2.c>,若file2.c中有全局静态变量a,则( )。
a在file1.c中应用extern说明
a在file1.c中有效,不必用extern说明
a在file1.c中不生效
a在file1.c和file2.c中均不生效
第9题
设有如下函数定义:
int f(char *s) { char *p=s; while(*p!='\0') p++; return (p-s); }
如果在主程序中用下面的语句调用上述函数,则输出结果是( )。
printf("%d\n",f("goodbye!"));
3
6
第10题
下面说法中错误的是( )。
共用体变量的地址和它各成员的地址都是同一地址
共用体内的成员可以是结构变量,反之亦然
函数可以返回一个共用体变量
在任一时刻,共用体变量的各成员只有一个有效
第11题
C语言本身没有输入输出语句。
正确
错误
第12题
关系运算符 <= 与 == 的优先级相同。
第13题
scanf函数的一般格式为:scanf(格式控制字符串,输入表列);。
第14题
C语言本身不提供输入输出语句,输入和输出操作是由函数来实现的。
第15题
条件表达式x?'a':'b'中,若x=0时,表达式的值为b。
第16题
运算符的级别由高向低依次为赋值运算符->关系运算符->算术运算符->逻辑运算符->!。
第17题
引用数组元素时,下标可以是整型表达式或整型常量。
第18题
do-while循环由do开始,while结束,在while(表达式)后面不能加分号。
第19题
C语言数组的下标可以从-1开始。
第20题
给数组赋初值时,初值的个数可以小于所定义的元素的个数。
第21题
定义一维数组的形式为:类型说明数组名[表达式],其中表达式可以是正整型常量表达式、字符常量表达式。
第22题
若在程序某处定义了某全局变量,但不是程序中的所有函数中都可使用它。
第23题
C语言所有函数都是外部函数。
第24题
在C语言中,程序总是从第一个函数开始执行,最后一个函数结束。
第25题
在定义宏时,在宏名与带参数的括弧之间不应加空格。
第26题
C语言中,_____是程序的基本组成部分。
第27题
设(k=a=5,b=3,a*b),则表达式的值为_____。
第28题
已知a=13,b=6,a%b的十进制数值为_____。
第29题
若有以下定义,则计算表达式y+=y-=m*=y后的y值是_____。
int m=5,y=2;
第30题
执行下面两个语句,输出的结果是_____。
char c1=97,c2=98; printf("%d %c",c1,c2);
第31题
当a=1,b=2,c=3时,执行以下程序段后a=_____。
if (a>c); { b=a; a=c; c=b; }
第32题
当a=1,b=2,c=3时,执行以下程序段后b=_____。
if (a>c) { b=a; a=c; c=b; }
第33题
int x=2,y=3,z=4;
则表达式x+(y>!z)的值为_____。
第34题
设x和y均为int型变量,则以下for循环中的scanf语句最多可执行的次数是_____。
for (x=0,y=0;y!=123&&x<3;x++) { scanf ("%d",&y); }
第35题
static int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};
其中a[1][2]的值为_____。
第36题
字符串比较的库函数是_____,只写函数名即可。
第37题
函数不可以进行嵌套定义,但可以进行嵌套_____。
第38题
预处理命令行都必须以_____号开始。
第39题
将函数funl的入口地址赋给指针变量p的语句是_____。
第40题
设有以下共用体类型说明和变量定义,则变量a在内存所占字节数是 _____。
union stud { char num[6]; float s[4]; double ave; } a,*p;
第41题
功能:用函数将第2个串连接到第1个串之后,不允许使用strcat函数。
#include<stdio.h> void len_cat(char c1[],char c2[]) { int i,j; for(_____1_____); for(_____2_____) { _____3_____ } _____4_____ } void main() { char s1[80],s2[40]; void TestFunc(); gets(s1);gets(s2); len_cat(s1,s2); printf("string is: %s\n",s1); TestFunc(); } void TestFunc() { FILE *IN,*OUT; int m,n; int i[2][200]; IN=fopen("in.dat","r"); if(IN==NULL) { printf("Read File Error"); } OUT=fopen("out.dat","w"); if(OUT==NULL) { printf("Write File Error"); } for(n=0;n<2;n++) fscanf(IN,"%s",i[n]); len_cat(i[0],i[1]); fprintf(OUT,"%s\n",i[0]); fclose(IN); fclose(OUT); }
第42题
功能:编写函数fun其功能是:根据整型形参m,计算如下公式的值:y=1/2!+1/4!+...+1/m!(m是偶数)
#include<stdio.h> double fun(int m) { _____1_____ int i,j; double s=1; for(_____2_____) { for(_____3_____) _____4_____ _____5_____ } _____6_____ } void main() { int n; void TestFunc(); printf("Enter n: "); scanf("%d", &n); printf("\nThe result is %1f\n", fun(n)); TestFunc(); } void TestFunc() { FILE *IN,*OUT; int t; double o; int c; IN=fopen("in.dat","r"); if(IN==NULL) { printf("Read File Error"); } OUT=fopen("out.dat","w"); if(OUT==NULL) { printf("Write File Error"); } for(c=1;c<=5;c++) { fscanf(IN,"%d",&t); o=fun(t); fprintf(OUT,"%lf\n",o); } fclose(IN); fclose(OUT); }
选择题(1 - 25题,共计25分) 填空题(26 - 42题,共计75分)