吉林大学网络教育2016秋《C语言程序设计》作业答案
更新时间:2024-01-16 23:16:01 阅读量: 教育文库 文档下载
- 吉林大学网络教育学费推荐度:
- 相关推荐
C语言程序设计
1:在C语言中,文件的存取是以( )为单位的,这种文件被称作( )文件。 字符、流式
2:设x=10100011,若要通过x^y使x的高4位取反,低4位不变,则y的二进制数是( )。 11110000
3:若a是int型变量,且a的初值为6,则计算表达式后a的值为() a+=a-=a*a -60 4:与表达式x^=y-2等价的另一书写形式是( ).x=x^y一2或X=x^(y一2) 5:在C 语言中,一个函数一般由两个部分组成,它们是( )和( )。函数说明部分、函数体
6:以下程序的功能是将磁盘文件的内容在打印机上输出。请在【】处填入适当的内容。 #include
main(int argc,char *argv[argv[1]]) {
char buff[SIZE]; FILE *fpr, *fpd; if (argc!=2) {
puts(“\\7Usege:type filename”); exit(); }
while(fgets(【 】)!=NULL)
fputs(【 】);
fclose(fpr); fclose(fpd);
} buff,SIZE,fpr、buff,fpd
7:若x和n均是int型变量,且x的初值为12,n的初值为5,则计算表达式后x的只为( )。 x%=(n%=2) 0
8:若有定义:int x=3,y=2;float a=2.5,b=3.5;则下面表达式的值为()。 1 9:若有定义:int b=7; float a=2.5,c=4.7;则下面表达式的值为(). a+(int)(b/3*(int)(a+c)/2)%4 5.500000 10:表达式10%3的结果是() 1
11:把以下多项式写成只含七次乘法运算,其余皆为加、减运算的表达式( ). 5X^7+3X^6-4X^5+2X^4+X^3-6X^2+X+10
x*〔X *(x *(x*(x*(X*(5*x十3)一4)十2)十1)一6)十1)十10 12:下面程序的运行结果是( )。 #include
{do{a*=y; a++;}while(y--);} printf(“%d,%d”,a,y); } 1,-2
13:当调用函数read从磁盘文件中读数据时,若函数的返回值为10,则表明读入了10个字符;若函数的返回值为0,则是( );若函数的返回值为-1,则意味着( )。 遇到了文件结束符、读文件出错
14:以下程序的功能是用“追加“的形式打开gg.txt查看文件指针的位置;然后向文件中写入”data”再查看文件指针的位置。其中ftell(*FILE)返回long型的文件指针位置。
程序执行前gg.txt内容为:sample。请在【】处填入适当的内容。 #include
printf(“position=%ld\\n”,position); fprintf(【 】); position=ftell(fp);
printf(“position=%ld\\n”,position); fclose(fp); fclose(fp);
} FILE*fp、\、fp,\
15:在C语言中(以16位PC机为例),一个float型数据在内存中所占用的字节数为();一个double型数据在内存中所占用的字节数为()。 4、8 16:执行下列语句后,a的值是() int a=12;a+=a-=a*a;-264
17:以下程序的运行结果是( main() { increment(); increment(); increment(); }
increment(); { int x=0; x+=1;
printf(“%d”,x); }111
18:以下程序的运行结果是( main()
{struct EXAMPLE{struct{ int x; inty;
)。 . )
}in; int a; int b; }e;
e.a=1;e.b=2; e.in.x=e.a*e.b; e.in.y=e.a+e.b;
printf(“%d,%d”,e.in.x,e.in.y); } 2,3
19:若a、b和c均是int型变量,则计算表达式后,a值为(),b值为(),c值为()。 a=(b=4)+(c=2) 6、4、2
20:设有char a,b;若要通过a&b运算屏蔽掉a中的其它位,只保留第2和第8位(右起为第1位),则b的二进制数是( ). 10000010 21:下面程序段的运行结果是( )。 i=1;s<3; do{s+=i++;
if(s%7==0) continue; else ++i; }while(s<15); printf(“%d”,i); 8
22:若x和y都是double型变量,且x的初值为3.0,y的初值为2.0,则表达式pow(y,fabs(x))的值为( )。8.000000
23:下面程序运行结果是( )。 char s[20]=”abcd”; char *ssp=s; sp++;
puts(strcat(sp,”ABCD”)); bcdABCD 24:下面程序段的运行结果是( )。 char s[80], *sp=”HELLO!”; sp=strcpy(s,sp); s[0]=’h’; puts(sp); hELLO!
25:以下程序的运行结果是( ). mian() {
unsigned a,b; a=0*9a; b=a;
printf(“a:%x\\nb:%x\\n”,a,b); } a:9a b:ff65
26:假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为(27:下面程序的运行结果是( )。 #include
。 9 )
{int i,k=0; for(i=1;;i++) {k++; while(k
if(k%3==0) goto loop; } }
loop:printf(“%d,%d,i,k”); } 2,3
28:以下的运行结果是( )。 #include”string.h” int *P; main()
{int a=1,b=2,c=3; p=&b; pp(a+c,&b);
printf(“(!) %d %d %d \\n”,a,b,*p); }
pp(inta ,int *b) {int c=4;
p=*b+c; a=*p-c;
printf(“(2) %d %d %d \\n”,a,*b,*p); }2 6 6,1 6 6
29:以下程序的运行结果是( ). struct n{ int x; char c; }; main()
struct n a={10,‘x’}; func(a);
printf(%d,%c,a.x,a.c); }
func(struct n b) {b.x=20; b.c=’y’; }10,x
30:以下程序的运行结果是( main()
{ int i=2,x=5,j=7;
。 )
fun(j,6);
printf(“i =%d;j=%d;x=%d\\n”,i,j,x); }
fun(int i,int j) { int x=7;
printf(“i=%d;j=%d;x=%d\\n”,i,j,x); }i=7; j=6; x=7 (打)
1:下面有关for循环的正确描述是( ) 4.for循环体语句中,可以包含多条语句,但要用花括号括起来
2:下面程序段的运行结果是( )。 char *s=”abcde”;
s+=2; printf(“%d”,s); 3.字符’c’的地址
3:已有程序和输入数据的形式,程序中输入语句的正确形式应当为( )。(注:?表示空格,
printf(“\\nInput number:”); 输入语句
printf(“\\nf=%f,a=%d\\n”,f,a); }
Input number:4.5? ?2
5:C语言共用体型变量在程序运行期间 ( ) 。 2.只有一个成员驻留在内存中 6:以下程序的运行结果是 ( ).. . typedef union {long a[2]; int b[4]; char c[8]; }TY TY our; main()
{printf (“%d\\n”,sizeof(our)); } 3.8
8:在C语言中,要求运算数必须是整形的运算符是( ). 4.%
9:若有说明:int a[3][4];则对a数组元素的非法引用是( )。 4.a[0][4] 10:若有以下定义和说明: #include“stdio.h” struct std { char num[6];
char name[8]; float mark[4]; }a[30]; FILE *fp;
设文件中以二进制形式存有10个班的学生数据,且已正确打开,文件指针定 位于文件开头。若要从文件中读出30个学生的数据放入a数组中,以下不能 此功能的语句是( )。 4.for( i=0; i<30; i++ )
fread( a[i], sizeof( struct std ), 1L,fp );
11:设有以下结构体类型: struct st { char name[8]; int num; float s[4]; }student[50]; 并且结构体数组student中的元素都已有值,若要将这些元素写到硬盘 文件fp中,以下不正确的形式是( )。 3.fwrite( student, 25*sizeof( struct st ), 25, fp ); 12:设有以下说明,则下面不正确的叙述是( )。 Union data { int i; char c; float f; }un;
3.un可以作为函数参数 13:请读程序: #define ADD(x) x+x main()
{
int m=1,n=2,k=3; int sum=ADD(m+n)*k; printf(“sum=%d”,sum); }
上面程序的运行结果是( )。 2.sum=10
14:fgetc函数的作用是从指定文件读入一个字符,该文件的打开方式必须是( )。 3.读或读写
15:若有语句int *point,a=4;和point=&a; 下面均代表地址的一组选项是( )。 4.&a,&*point,point
16:C语言结构体类型变量在程序执行期间( ). 1.所有成员一直驻留在内存中 17:设位段的空间分配由右到左,则以下程序的运行结果是( ). struct packed_bit {unsigned a:2; unsigned b:3; unsigned c:4; int I; } data; main()
{data.a=8; data.b=2;
printf(“%d\\n”,data.a+data.b); }
2.2
18:已有变量定义和函数调用语句:int a=25; print_value(&a);下面函数的正确输出结果是( )。
void print_value(int *t)
{ print(“%d\\n”,++*x);} 4.26
19:在位运算中,操作数每左移一位,其结果相当于( ). 1.操作数乘以2 20:以下C程序正确的运行结果是( ). main() {int y=2456; printf(“y=%3o\\n”,y); printf(“y=%8o\\n”,y); printf(“y=%#8o|n”,y); } 4.y=4630 y= 4630 y= 04630
21:下面不正确的字符串常量是( ) 1.’abc’
22:以下关于运算符优先顺序的描述中正确的是( ). 3.以赋值运算符<逻辑与运算符<关系运算符<算术运算符
23:以下正确的叙述是( ). 4.在C程序中,%是只能用于正数运算的运算符 24:已知学生记录描述为 struct student
{int no;
char name[20]; char set; struct {int year; int month; int day; }birth; };
struct student s;
设变量s中的“生日”应是“1984年11月11日”,下列对生日的正确赋值方式是( ). 4.s.birth.year=1984; s.birth.month=11; s.birth.day=11;
25:下面程序段的运行结果是( ).for(x=3,x<6;x++) printf((x%2)?(“##%d\\n”),x); 4.**3##4 **5
26:以下不正确的叙述是( ) 4.当从键盘输入数据时,对于整形变量只能输入整形数值,对于实型变量只能输入实型数值
27:下面四个选项中,均是合法浮点数的选项是( ). 2.-.60 12e-4 -8e5 28:表达式~0x13的值是( ). 1.0xFFEC
29:一个c程序是由( )。 2.一个或多个函数组成
30:以下对二维整形数组a进行正确初始化的语句是( )。 2.int a[][3]={{1,2,3},{4,5,6}}; 1:
若有定义:int e=1,f=4,g=2;float m=10.5,n=4.0,k;则计算赋值表达式
k=(e+f)/g+sqrt ((double)n)*1.2/g+m后k的值是( ).
回答:13.700000
3:请读程序片段: int m=20,n=025; else printf(“nnn\\n”)
以上程序片段的输出结果是( ). 回答:mmm
5:请读程序片段: int x=1;
printf(“%d\\n”,x);
上面程序片段的输出结果是( ). 回答:-2 6:
若输入的值是-125,以下程序的运行结果是(#include “math.h” main()
。 )
{ int n;
scanf(“%d”,&n); printf(“%d=”,n); if(n<0) printf(“-”); n=fabs(n); fun(n); }
fun(int n) { int k,r;
for(k=2;k<=sqrt(n);k++) { r=n%k; while(r==0) {printf(“%d”,k); n=n/k;
if(n>1) printf(“*”); r=n%k; } }
if(n!=1) printf(“%d\\n”,n); }
回答:?125= ?5*5*5 (打印)
10:以下程序的运行结果是( ). main() {
char a=-8;unsigned char b=248; printf(“%d,%d”,a>>2,b>>2); }
回答:-2,62
11:若有以下定义,则计算表达式y+=y-=m*=y后y值是() 回答:-6 12:
以下程序的运行结果是( )。 #include
{ int a=1,b=2,c; c=max(a,b);
printf(“max is %d\\n”,c); }
max(int x, int y) { int z; z=(x>y)? x:y; return(z); }
回答:max is 2 13:请读程序片段: unsigned a=16;
printf(“%d,%d,%d\\n”,a>>2,a=a>>2,a); 以上程序片段的输出结果是( ).
回答:1,4,16
14:与表达式x^=y-2等价的另一书写形式是( ).
回答:x=x^y一2或X=x^(y一2)
15:设x=10100011,若要通过x^y使x的高4位取反,低4位不变,则y的二进制数是( )。
回答:11110000
16:面程序段的运行结果是( )。 char[]=”12345’,*p; int s=0;
for9p=a;*p!=`\\0`;p++) s=10*s+*p-`0`; printf(“%s”,P+5); 回答:12345
17:在C语言中(以16位PC机为例),一个char型数据在内存中所占用的字节数为( );一个int型数据在内存中所占用的字节数为( )。 回答:4、8 18:
在C语言中,&运算符作为单目运算符时表示的是( );作为双目运算符时表示的是( )运算.
回答:取地址、按位与 21:
以下程序的运行结果是( )。 main() { increment();
increment(); increment(); }
increment(); { int x=0; x+=1;
printf(“%d”,x); }
回答:111 22:
已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=’a’+’8’-‘3’的值为( )。 回答:f
24:下面程序段的运行结果是( )。 har str[]=”abc\\0def\\0ghi”,*p=str; printf(“%s”,p+5); 回答:ef
25:设int x;当x的值分别为1、2、3、4时.表达式(x&l==1)?1:o的值分别是( ),( ),( ),( ). 回答:1、0、1、0
26:在C语言中,一个int型数据在内存中占用2个字节,则int型数据的取值范围为( )
回答:-32768~+32767 或-32768~+32767
27:若x和n均是int型变量,且x和n的初值均为5,则计算表达式后x的值为(),n的值为()。 x+=n++
回答:10、6 (打)
28:以下程序的运行结果是( ). main() {
unsigned char a,b; a=0*1b;
printf(“0x%x\\n”,b=a<<2); }
回答:0x6c
3:C语言中的标识符只能由三种字符组成,它们是( ),( ),( )。 回答:字母、数字、下划线
18:若a是int型变量,则计算表达式后a的值为() a=25/3%3 回答:2
19:定义int x,yl执行y=(x=1,十十x,x十2)5语句后,y的值是( ) 回答:4
20:以下的运行结果是( )。 #include
for(I=0;I<4;I++); {k=sub(&I); printf(“=”,K); }
printf(“\\n”); }
sub(int *s) {static int t=0; t=*s+t; }
回答:0 1 3 6
21:若有定义:char c=’\\010’;则变量c中包含的字符个数为( ). 回答:1个
26:若s是int型变量,且s=6,则下面表达式的值为()。 s%2+(s+1)%2 回答:1
29:测试char型变量a第六位是否为1的表达式是( )(设最右位是第一位) 回答:a&040或a&0x20或a&32
1:若有以下说明和语句,则 对中域的正确引用方式是( )。 Struct pupil {char name [20 ; int sex; }pup,*p; p=&pup; 4.(*p).sex
2:以下for循环是( )。
for(x=0,y=0;(y!=123)&&(x<4);x++); 3.执行4次
3:若I为整型变量,则以下循环执行次数是( ). for(I=2;I==1) printf(“%d”,I--);
2.0次
4:一个C语言程序是由( )。 2.函数组成 5:设有下面的程序段:
chat s[]=”china”; char *p; p=s; 则下列叙述正确的是( )。 4.*p与s[0]相等
6:利用fseek函数的正确调用形式是( ). 4.以上答案均正确 7:fwrite函数的一般调用形式是( )。 4.fwrite(buffer,size,count,fp) ;
8:在16位IBM-PC机上使用C语言,若有如下定义: struct data {int i; char ch; double f; }b;
则结构变量b占用内存的字节数是( ). 4.4
9:函数rewind的作用是( ). 1.使位置指针重新返回文件的开头
10:以下对C语言中共用体类型数据的叙述正确的是( )。 3.一个共用体变量中不可能同时存放其所有成员 11:下面四个选项中,均是不合法转义字符的选项是( ).
2.’\\1011’ ‘\\’ ‘\\a’
12:若已定义int a=5;下面对(1),(2)两个语句的正确解释是( )。 (1)int *p=&a; (2) *p=a;
4.(1)在对p进行说明的同时进行初始化,使p指向a (2)将变量a的值赋于*p
13:以下符合C语言语法的赋值表达式是( ). 2.d=9+e,f=d+9
14:以下程序的运行结果是( )。 #define MIN(x,y) (x)<(y)?(x):(y) main()
{int i=10,j+15,k; k+10*MIN(i,j); printf(“%d\\n”,k); } 2.15
15:下面不正确的字符串常量是( ) 1.’abc’
16:下面程序运行结果是( ). # include
{ int a=1,b=10; do
{b-=a ; a++ ; } while ( b--<0) ; printf ( “ a=%d , b=%d\\n”,a,b); }
2.a=2,b=8
17:在一个c源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是( ). 4.static
18:一个c程序的执行是从( ). 1.main( )函数开始,直到main( )函数结束 19:设有以下结构体类型: struct st { char name[8]; int num; float s[4]; }student[50]; 并且结构体数组student中的元素都已有值,若要将这些元素写到硬盘 文件fp中,以下不正确的形式是( )。 3.fwrite( student, 25*sizeof( struct st ), 25, fp );
20:设 char *s=”a17bc”; 则指针变量s指向的字符串所占的字节数是( )。 3.6 21:选择出合法的if语句(设int x,a,b,c;)( ). 1.if(a=b)x十十; 22:若有说明语句: char c=‘\\72’; 则变量c( )。 1.包含1个字符 23:以下对一维整形数组a进行正确初始化的语句是( )。 3.int a[]={0}; 24:以下对二维整形数组a进行正确初始化的语句是( )。 1.int a[2][]={{1,01},{5,2,3}}; 2.int a[][3]={{1,2,3},{4,5,6}}; 25:下面四个选项中,均是不合法浮点数的选项是( ). 2.123 2e4.2
.e5
26:以下程序的运行结果是( )。
#define MAX(A,B) (A)>(B)?(A):(B) #define PARTY(Y) printf(“Y=%d\\t“,Y) Main()
{int a=1,b=2,c=3,d=4,t; T=MAX(a+b,c+d); PRINT(t); } 3.Y=7
27:使用typedef定义一个新类型的正确步骤是( )。 3.2,1,4,3
28:以下不正确的叙述是( )
4.当从键盘输入数据时,对于整形变量只能输入整形数值,对于实型变量只能输入实型数值
29:以下scanf函数调用语句中对结构体 变量成员的不正确引用是( )。 Stuct pupil {char name[20 ]; int age ; int sex; }pup[5,]*p;
p=pup; 4.scanf(“%d”,P->age);
30:表示图中坐标轴上阴影部分的正确表达式是( ). //// | | ////| //// | | ////| ________________________________________X A b c 3.(x<=a) ||(x>=b)&&(x<=c) 1:请读程序片段: int a=1,b=2;
if(a&b)printf(“***\\n”); else printf(“$$$\\n”);
以上程序片段的输出结果是( ). 回答:$$$
2:下面程序的运行结果是( )。 #include
for(i=j;i<=2*j;i++) switch(i%j)
{ case 0:
case 1:printf(“*”);break; case 2:printf(“#”); } }
回答:****#
6:当运行以下程序时,从键盘输入 book
(
if(!strcmp(s1,s2)) printf(“*”): else printf(“#”);
printf(“%d”,strlen(strcat(s1,s2))); 回答:#9
10:C语言所提供的基本数据类型包括:单精度型、双精度型()、()、()。 回答:整型、字符型、枚举型
16:与表达式a&=b 等价的另一书写形式是( ). 回答:a=a&b 17:
以下程序的功能是将文件file1.c的内容输出到屏幕上并复制到文件file2.c中。请将【】
处添入适当的内容。 #include
FILE【 】;
fp1=fopen(“file1.c”,”r”); fp2=fopen(“file2.c”,”w”);
while(! Feof(fp1)) putchar(grtchar(fp1)); 【 】
While(! Feof(fp1)) putc(【 】); fclose(fp1); fclose(fp2); }
回答:*fp1,*fp2、rewind(fp1)、getc(fp1),fp2
21:设x=10100011,若要通过x^y使x的高4位取反,低4位不变,则y的二进制数是( )。 回答:11110000
25:表达式10/3的结果是( ) 回答:3
26:下面程序段的运行结果是( )。
char a[]=”123456789”,*p; int i=0; p=a; while(*p)
{if(i%2==0) p=’*’; p++; i++; } puts(a)
回答:*2*4*6*8*
27:设x是一个整数(16bit),若要通过x|y使x低8位置1,高8位不变,则y的八进制数是 ( ). 回答:0377
1:当顺利执行了文件关闭操作时,fclose函数的返回值是( )。 3.0
2:设有以下说明,则下面不正确的叙述是( )。 Union data { int i; char c; float f; }un;
3.un可以作为函数参数
3:有如下程序,若要求a1、a2、c1、c2的值分别为10、20、A、B,正确的数据输入是( ). main() { int a1,a2; char c1,c2;
scanf(\scanf(\}
4.10 20AB
4:若有以下说明和语句,则下面表达式中值为1002的是( Struct student {int age; int num; };
struct student stu[3]={{1001,20},{1002,19},{1003,21}; struct student *p; p=stu; 4.(*++p).age
5:下面程序段的运行结果是( ). for(y=1;y<10;) y=((x=3*y,x+1),x-1);
)。
printf(“x=%d,y=%d”,x,y); 3.x=15,y=14
6:下面程序段的运行结果是( )。 char *s=”abcde”; s+=2; printf(“%d”,s); 3.字符’c’的地址
7:已有定义 int k=2;int *ptr1,*ptr2;且ptr1和ptr2均已指向变量k,下面不能正确执行的赋值语句是( )。 2.ptr2=k;
8:变量的指针,其含义是指该变量的( )。 2.地址
9:逻辑运算符两侧运算对象的数据类型( ). 4.可以是任何类型的数据
10:在一个c源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是( ). 4.static 11:以下程序的正确运行结果是( ). #include
{extern int x,y;int a=15,b=10; x=a-b; y=a+b; } int x,y; main() { int a=7,b=5;
x=a+b; y=a-b; num();
printf(“%d,%d\\n”,x,y); } 3.5,25
12:设有如下定义: struct sk {int n; float x; }data,*p;
若要使P指向data中的n域, 正确的负值语句的是( )。 3.p=(struct sk*)&data.n;
13:已知x=43,ch=’A’,y=0;则表达式(x>=y6&&ch(‘B’ &&! Y)的在值是( ). 3.1
14:若有说明:int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是( )。 2.3 15:若有宏定义如下:
#define X 5 #define Y X+1 #define Z Y*X/2 则执行以下printf语句后,输出结果是( )。 Int a;a=Y;
Printf(“%d\\n”,Z); Printf(“%d\\n”,--a); 4.7 5
16:在C语言中,char型数据在内存中的存储形式是( )。 4.ASCII码
17:以下正确的叙述是( ).
4.在C程序中,%是只能用于正数运算的运算符 18:以下程序的运行结果是 ( ) . #include “stdio.h” union pw {int I char ch[2]; }a; main() { ch[0]=13; ch[1]=0;
printf(“%d\\n”,a,i); } 1.13
19:fwrite函数的一般调用形式是( )。
4.fwrite(buffer,size,count,fp) ; 20:以下程序的运行结果是( )。 #define MIN(x,y) (x)<(y)?(x):(y) main()
{int i=10,j+15,k; k+10*MIN(i,j); printf(“%d\\n”,k); } 2.15
21:下面程序的运行结果是( ). #include
while(b- ->=0) k++; }
printf(“%d,%d”,k,b); } 4.8,-2
22:若有说明:int a[3][4];则对a数组元素的正确引用是(3.a[1+1][0]
。 )
23:根据题目中已给出的数据的输入和输出形式,程序中输入输出语句的正确内容是( )。 main() { int x;float y; pringf(“enter x,y;”) 输入语句 输出语句 }
输入形式 enter x,y:2 3.4 输出形式 x+y=5.40
2.scanf(“%d%f”,&x,&y); printf(“\\nx+y=%4.2f”,x+y);
24:下面能正确进行字符串赋值操作的是( )。25:以下程序输出的结果是( ) void main() { int a=5,*p1,**p2; p1=&a,p2=&p1; (*p1)++;
printf(“%d\\n”,**p2); }
3.char *s; s=”ABCDE”;
3.6
26:判断char型变量cl是否为小写字母的正确表达式为( ). 4.(c1>=’a’)&&(c1<=’z’)
27:设有以下说明语句 struct stu {int a; float b; }stutype;
则下面的叙述不正确的是( ). 3.stutype是用户定义的结构体类型名
28:以下正确的说法是( ). 1.如果在一个函数中的复合语句中定义了一个变量,则该变量只在该复合语句中有效
29:以下使i的运算结果为4的表达式是( )。 4.int i=1,j=1; i+=j十=2;
30:下面程序段中,for循环的执行次数是( )。 char *s=”\\ta\\018bc”;
for ( ;*s! =’\\0’;s++) printf(“*”); 3.6
2:已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=’A’+’6’-‘3’;后,c2的值为( ). 1.D
4:对于for(表达式1;;表达式3)可理解为( ) 2.for(表达式1:1;表达式3) 6:以下叙述中正确的是( )。 3.宏替换不占用运行时间,只占编译时间 7:以下程序的正确运行结果是( ).
main() {int a=2,I;
for (I=0;I<3;I++) printf(“4%d”,f(a)); } f(int a)
{ int b=0;static int c=3; b++; c++; return(a+b+c); } 4.7 8 9
8:为了避免嵌套的if-else语句的二义性,c语言规定else总是与( )组成配对关系。 3.在其之前未配对的最近的if
10:有以下定义和语句,则以下引用形式不合法的是( )。 Struct s {int i1;
struct s*i2,i0; };
static struct s a[3 ]={2,&a[1],’\\0’,4,%a[2],&a[0],6,’\\0’,&a[1]}, *ptr; ptr=a; 4.ptr->i1
11:已知函数的调用形式:fread(buffer,size,count,fp);其中buffer代表的是( )。 3.一个指针,指向要读入数据的存放地址
12:选择出合法的if语句(设int x,y;)( )。 1.if(x!=y)if(x>y)printf(\>y\n”);
else prinf(”x<y\\n”);else printf(”X==y\n”); 14:以下对一维整形数组a的正确说明是( )。 4.#define SIZE 10 int a[SIZE];
15:若有说明:int a[][4]={0,0};则下面正确的叙述是( )。 4.只有元素a0][0]和a[0][1]可得到初值0,其余元素均得不到初值0
18:已有如定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A 和B,当从第一列开始输入数据时,正确的数据输入方式是( )。(注:
则以下语句正确的是( )。
2.a={2,’a’,1.2};
20:若有定义:int a=7; float x=205 ,y=4.7; 则表达式x+a%3*(int)(x+y)%2/4的值是( )。 1.2.500000
21:如果a=1,b=2,c=3,d=4,则条件表达式a<b?a:c<d?c:d的值为( ). 1.1
22:下面程序段的运行结果是( ) int n=0;
while(n++<=2); printf(“%d”,n); 4.有语法错
24:阅读以下程序,当输入数据的形式为:25,13,10
scanf(“%d%d%d”,&x,&y,&z); printf(“x+y+z=%d\\n”,x+y+z); }
4.不确定值
25:若有说明:int a[3][4];则数组a中各元素( )。 2.可在程序的编译阶段得到初值0
28:若以下变量均是整形,且num=sum=7;则计算表达式sUM=num++,sUM++,++num后sum的值为( ). 1.7
29:设有说明: char w; int x; float y; double z; 则表达式w*x+z-y值的数据类型为( )。 4.double.
30:设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是( ). 4.!((x<y)&&!z ||1)
4:以下程序的运行结果是( ) #include”stdio.h”
#define FUDGE(y) 2.84+y
#define PR(a) printf(“%d”,(int)(a)) #define PRINT1(a) PR(a);put char(‘\\n’) main() {int x=2;
PRINT1(FUDGE(5)*x); } 2.12
5:C语言的编译系统对宏命令的处理是( )。 4.在对源程序中的其它语句同时进行编译的
6:若有以下程序段: …………
int a[]={4,0,2,3,1},I,j,t; for(I=1i<5;I++) {t=a[I];j=I-1;
while(j>=0&&t>a[j]) {a[j+I]=a[j];j--;} a[j+1]=t;} …………
则该程序段的功能是( )。 2.对数组a进行插入排序( 降序 7:请读程序 #include
上面程序的输出结果是( )。 1.12
8:下面程序( )。(每行程序前面的数字表示行号)。 1 main() 2 {
3 int a[3]={1}; 4 int i;
5 scanf(\
6 for(i=1;i<3;i++) a[0]=a[0]+a[i];
7 printf(\ 8 } 4.5
9:下面四个选项中,均是非法常量的选项是( )。 1. ‘as’ -0fff \\0xa’
10:若有以下宏定义:
#define N 2 #define Y(n) ((N+1)*n)
则执行语句z=2*(N+Y(5));后的结果是( )。 2.z=34
11:凡是函数中未指定存储类别的局部变量,其隐含的存储类别为( ). 1.自动(auto) 13:以下叙述中不正确的是( )。 3.C程序在执行过程中对预处理命令行进行处理 16:下面判断正确的是( )。 3.char *s=”china”; 等价于 char *s; s=”china”; 20:若有宏定义:#define MOD(x,y) x%y 则执行以下语句后的输出为( )。 Int z,a=15,b=100; Z=MOD(b,a);
Printf(“%d\\n”,z++); 2.10
21:sizeof(float)是( )。 2.一个整型表达式
22:若以“a+”方式打开一个已存的文件,则以下叙述正确的是( )。 1.文件打开时,原有文件内容不被删除,位置指针移到文件末尾,可作添加和读操作 23:下面程序段的运行结果是( ) x=y=0;
while(x<15) y++, x+=++y; printf(“%d,%d”’y’x); 4.8,20
24:下列四组选项中,均不是C语言关键字的选项是( ). 1.define i f type 27:
以下程序的正确运行结果是( ). #include
{ int k=4,m=1,p;
p=func(k,m);printf(“%d,”,p); p=func(k,m);printf(“%d\\n”,p); }
func(int a,int b) { static int m=0,i=2;
i+=m+1; m=i+a+b; return(m); } 1.8,17
30:C语言用( )表示逻辑“真”值。 3.非零整数值
7:若x=0123,则表达式(5+(int)(x))&(2)的值是( ) 回答:0130或88或0x58
10:把int类型变量low中的低字节及变量high中的高字节放入变量s中的表达式是( )。 回答:s=high&0xff00|low&0xOOff
17:与表达式x^=y-2等价的另一书写形式是( ). 回答:x=x^y一2或X=x^(y一2) 11:读程序片段: int a=-1; a=a |0377;
printf(“%d,%o\\n”,a,a);
以上程序片段的输出结果是( ). 回答:-1.177777
14:设x=10100011,若要通过x^y使x的高4位取反,低4位不变,则y的二进制数是( )。
回答:11110000
21:下面程序段的运行结果是( )。 char *p=”PDP1-0”; int I,d;
for(I=0;I<7;I++) {d=isdigit(*(p+ii));
if(d!=0) printf(“%c *(p+I)); }
回答:1*0*
30:feof(fp)函数用来判断文件是否结束,如果遇到文件结束,函数值为( ),否则为( )。 回答:非零值、0
1:若有说明:int a[3][4]={0};则下面正确的叙述是( )。 4.数组a中每个元素均可得到初值0
4:#define能做简单的替代,用宏替代计算多项式4*x*x+3*x+2之值的函数F,正确的宏定义是( )。 3.#definef(a)(4*a*a+3*a+2) 7:若有代数式
,则正确的C语言表达式是( )。
1.sqrt (fabs(pow(y,x)+log(y)))
8:能正确表示“当x的取值在Ll,10]秆L200,210]范围内为真,否则为假’达式是 ( ) 。 3.(x>=1)&&(x<=lo) ??(x>=20Q)&&(x<=210)
11:若运行以下程序时,从键盘输入2473
#include
while((c=getchar())!=’\\n’) switch(c-‘2’) {case 0:
case1: putchar(c+4); case2: putchar(c+4);break
case3: putchar(c+3); default: putchar(c+2);break; }
printf(“\\n”); }1.668977
12:C语言派程序的基本单位是( )。 2.函数
14:函数调用语句:fseek(fp,-20L,2);的含义是( ). 3.将文件位置指针从文件末尾出向后退20个字节 15:设有以下说明: struct packed { unsigned one:1; unsigned two:2; unsigned three:3; unsigned four:4;
} data;
则以下位段数据的引用中不能得到正确数值的是( ) 1.data.one =4 19:fseek函数的正确调用形式是( ). 2.fseek(fp,位置量,起始点); 20:在宏定义#define PI 3.14159中,用宏名PI代替一个( )。 4.字符串
24:以下可作为函数fopen中第一个参数的正确格式是( )。 4.“c\\\%user\\\\text.txt” 25:下列运算符中优先级最高的是( ). 2.十
26:C语言规定,数组名做实参时,它和对应形参之间的数据传递方式是:_____ 4.地址传递
27:以下不正确的语句(设有int p,q)是( )。 4.p&&=q; 28:以下for循环的执行次数是( ).
for(x=0,y=0;(y=123)&&(x<4);x++); 3.执行4次
3:下面四个选项中,均是正确的数值常量或字符常量的选项是( ). 4.+001 0xabcd 2e
5:以下不能对二维整形数组a进行正确初始化的语句是( )。 3.int a[2][3]={{1,2},{3,4},{5,6}};
8:在C语言中,引用数组元素时,其数组下标的数据类型允许是( ) 3.整型常量或整型表达式
9:设C语言中,一个int型数据类型在内存中占2个字节,则unsigned int型数据的取值范围为( )。 3.0~65535
10:当说明一个共用体变量时系统分配给它的内存是( )。 3.成员中占内存量最大
者所需的容量 12:设有程序段 t=0
while(printf(“*”)) {t++; if(t<3) bread; }
下面描述正确的是( ). 2.其中循环控制表达式与‘0’等价 14:已知各变量的类型说明如下: Int k,a,b;
Unsigned long w=5; Double w=1.42;
则以下不符合C语言与法的表达式是( ). 1.x%(-3)
17:以下对二维整形数组a的正确说明是( )。 3.double a[1][4]; 18:下面程序( )。(每行程序前面的数字表示行号)。 1 main() 2 {
3 int a[3]={3*0}; 4 int i;
5 for(i=0;i<3;i++) scanf(\ 6 for(i=1;i<3;i++) a[0]=a[0]+a[i];
正在阅读:
吉林大学网络教育2016秋《C语言程序设计》作业答案01-16
公共关系学04-29
最新2017人教版一年级上册数学11-20各数的认识练习试06-30
excel计算基尼系数法,简单实用05-11
河南省安阳二中2016-2017学年高一下学期期末考试生物试题01-04
同济大学数理方程试卷A05-27
四年级奥数应用题12-18
台风过后自检自查报告03-14
09内部审核控制程序06-04
现代教育技术复习题09-22
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 吉林大学
- 网络教育
- 程序设计
- 作业
- 答案
- 语言
- 2016
- 絮凝沉淀池施工设计
- 多层实木复合地板生产线改造工程项目可行性研究报告 - 图文
- 爆破石方顶管施工方案
- 外国文学知识点自己整理
- (参数化)直齿圆柱齿轮做法教程
- 2010年教师资格证考试幼儿教育学模拟试题及答案解析
- 营销策划案例分析期末复习练习与解答
- 社交软件的兴起辩题简要分析
- 全国二级建造师执业资格考试《市政公用工程管理与实务》历年真题及答案 - 图文
- 2015年河南选调生面试备考:编故事题高分策略6
- 施工组织设计
- 发18附件(之附)
- ARM的AD接口实验课程设计
- 基于SAS软件的时间序列实验的代码
- 党建三会一课会议记录2018
- 入党的规定和程序
- 2016-2021年发酵食品市场前景预测及投资规划分析报告(目录)
- 直流调速及恒压频比课程设计概要
- 昆政办〔2012〕10号昆明市行政事业单位国有资产管理办法
- 九球桌安装说明 - 图文