c语言表达式1 4 2.75,c语言期末复习试题,上机练习

if(arr[i]>*pt1) (1) ; if(arr[i]

}

2002试题3

一 填空题(20分)

1.C语言表达式5>2>7>8 的值是( )。

2.当执行完以下语句后,变量a的值为( ),d的值为( ),e的值为( a=6; b=++a; c=--a; d=a++; e=a--;

3.下面程序段的输出结果是( )。

char a=111; a=a^00; printf(“%d %o\\n”,a,a);

4.a数组定义如下,按照内存排列顺序,a数组中的所有元素是( )。 char a[3];

5.设有以下宏定义,则执行赋值语句a=PP+20;(a为int型变量)后,a的值是( #define PR 8

#define PP PR*40

6.定义结构体类型时,应使用关键字( ),定义枚举类型时,应使用关键字( 7.C文件可以分为两种类型,它们是( )文件和( )文件。 8.若有char a[3]=“as”;则*a=( ),*(a+2)=( )。 二 判断对错(5分,对的划“√”,错的划“×”) 1.。( )

2.表达式1/4+2.75的值是3。( )

3.结构体类型只有一种。( )

4.函数若无返回值,则它一定无形参。( ) 5.C语言只能处理文本文件和二进制文件。( ) 二 判断对错(10分,每题1分。对的划“√”,错的划“×”) 1.在Turbo C中,实型数据在内存中占4个字节。( )

。 )。)。 ) 2.被main函数调用的函数只能是库函数。( )

3.对整型变量可进行自加或自减运算,而对常量或表达式不可以。( ) 4.算术运算符和赋值运算符的结合方向均由左自右。( ) 5.定义在main函数后的任何函数都需在main中进行函数声明。( ) 6.一个函数中只允许有一条return语句。( ) 7.任何数组在使用时必须先定义。( )

8.在int *p;和语句printf(“%d”, *p);中的*p含义相同。( ) 9.在定义枚举时,枚举常量可以是标识符或数字。( ) 10.用fopen(“file1”,”r+”)方式打开的文件可进行修改。( ) 三 选择题(20分,每题2分)

1.a,b为整形变量,二者均不为0,以下关系表达式中恒成立的是( (A) a*b/a*b==1 (B) a/b*b/a==1 (C) a/b*b+a%b==a (D) a/b*b==a 2.C语言源程序的基本单位是( )。

(A) 过程 (B) 函数 (C) 子程序 (D) 标识符 3.以下函数调用语句中含有( )个实参。 func((e1,e2),(e3,e4,e5));

(A) 2 (B) 3 (C) 5 (D) 语法错误 4.以下的for 循环( )。 for(x=0,y=0;(y!=123)&&(x<4);x++) ; (A) 执行3 次 (B) 执行4 次 (C) 循环次数不定 (D) 是无限循环 5.以下程序的输出结果为( )。 #define N 2 #define M N+2

#define CUBE(x) (x*x*x) #include \ main( ) { int i=M; i=CUBE(i); printf(\ }

(A) 17 (B) 64 (C) 125 (D) 53 6.以下程序的输出结果为( )。 main( )

{ int i=010,j=10,*pi,*pj; pi=&i; pj=&j;

printf(\ }

(A) 10,10 (B) 8,10 (C) 010,10 (D) 8,8 7.在下列程序段中,枚举变量c1,c2 的值依次是( ),( )。 enum color { red,yellow,blue=4,green,white} c1,c2; c1=yellow; c2=white; printf(\

)。 (A) 1 (B) 3 (C) 5 (D) 6

8.要打开一个已存在的非空文件"file"用于修改,选择正确的语句( )。 (A) fp=fopen(\ (B) fp=fopen(\ (C) fp=fopen(\ (D) fp=fopen(\ 9.以下程序的输出结果是( )。 main()

{ char s1[20]=“abc”,s2[20]=“123”; if(strcmp(s1,s2)>0) printf(“%s\\n”,s1)); else printf(“%s\\n”,s2); }

(A) abc (B) 123 (C) abc123 (D) 123abc

10.已知职工记录描述如下,设变量w中的“生日”是“1993年10月25日”,下列对“生日”的正确赋值方式是( )。 struct worker

{ int no; char name[20]; char sex;

struct { int day; int month; int year;}birth; };

struct worker w;

(A) day=25;month=10;year=1993;

(B) w.birth.day=25; w.birth.month=10; w.birth.year=1993; (C) w.day=25; w.month=10; w.year=1993; (D) birth.day=25; birth.month=10; birth.year=1993; 四 写出下列程序的运行结果(25分,每题5分) 1.main() { int i,j;

i=16; j=(i++)+i; printf(\ i=15; printf(\ }

2.#include \ main()

{ int i;

for(i=1;i+1;i++)

{ if(i>4)

{ printf(\ break; }

printf(\ } }

3.#include \ main()

{ int i,j,a[]={0,2,8,4,5}; printf(\

for(i=1;i<=5;i++)

{ j=5-i;

printf(\ } }

4.#include \ main()

{ char string1[]={\ s(string1,string2,5); printf(\ }

s(p,q,m) char *p.*q; int m;

{ int n=0; while(nwhile(*p!='\\0') { *q=*p; p++; q++; } *q='\\0'; }

5.main() { int y; fac(5,&y); printf(“y=%d\\n”,y); }

fac(int n,int *t) { int s;

if((n==1)||(n==0)) *t=2;

else { fac(n-1,&s); t=n*s; }

}

五 阅读下列程序,在 处填入适当内容,使程序完整(25分,每个空2分)

1.试求出1000以内的“完全数”。(提示:如果一个数恰好等于它的因子之和(因子包括1,不包括数本身),则称该数为“完全数”。如:6的因子是1、2、3,而6=1+2+3,则6是个“完全数”。) main() {

int i,a,m;

for(i=1;i<1000;i++) {

for(m=0,a=l;a<=i/2;a++)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值