c语言真题20套

导读:main(){inti,x[3][3]={1,2,3,4,5,6,7,8,9};,4.在do-while循环中,当while表达式为\假\时,循环就停止了.正确5,6C语言中调用_____函数来关闭文件.fclose,C语言的if语句中,用作判断的表达式为(A),4C语言中,数组元素的下标下限为__0___.,if(arr[i]main(){intarray[N]={10,7,19,29,4,

c语言真题20套

if(arr[i]<*pt1) *pt1=arr[i]; if(arr[i]<*pt2) *pt2=arr[i]; } }

main( )

{ int array[N]={10,7,19,29,4,0,7,35,-16,21},*p1,*p2,a,b; /***********ERROR***********/ *p1=&a;*p2=&b;

maxmin(array,p1,p2,N);

printf(\}

【参考答案】void maxmin(int arr[ ],int *pt1,int *pt2,int n)【参考答案】*pt1=*pt2=arr[0]; 【参考答案】if(arr[i]>*pt1) *pt1=arr[i]; if(*(arr+i)>*pt1)) *pt1=arr[i]; if(*pt1<*(arr+i))) *pt1=arr[i]; if(*pt1

功能:产生10个[30,90]区间上的随机整数,然后对其用选择法 进行由小到大的排序。 #include \void main()

{ /***********FILL***********/ _____; int i,j,k; int a[10];

for(i=0;i<10;i++)

a[i]=rand()a+30; //产生[30,90]区间上的随机整数 for(i=0;i<9;i++)

{/***********FILL***********/ _____;

for(j=i+1;j<10;j++) /***********FILL***********/ if(_____) k=j; if(k!=i) { t=a[k];a[k]=a[i]; a[i]=t;} }

/***********FILL***********/ for(_____ )

printf(\}

【参考答案】int t【参考答案】k=i

【参考答案】a[k]>a[j] a[j]i;i++ i=0;i<=9;i+=1 第五套

1假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是(C)。 A、2 B、6 C、8 D、7

2已知i、j、k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j 的值为2、k的值为3,以下选项中正确的输入语句是(C)。

A、scanf(\、scanf(\

C、scanf(\、scanf(\3 int a=3,b=2,c=1; if(a>b && b>c)a=b; else a=c;则a的值为(C)。 A、1 B、0 C、2 D、3 4 main()

{int x=1,a=0,b=0; switch (x){ case 0: b++; case 1: a++;case 2: a++;b++; } printf(\该程序的输出结果是(D )

A、a=1,b=1B、a=1,b=0C、a=2,b=2D、a=2,b=1 5 以下能计算1×2×3×┈×10的程序段是(C ).

A、do{ i=1;s=1;s=s*i;i++;}while(i>=10) ;B、do{ i=1;s=1;s=s*i;i++;}while(i<=10) ; C、i=1;s=1;do {s=s*i; i++; }while(i<=10) ;D、i=1;s=1; do { s=s*i; i++;}while(i>=10) ; 6针对下列程序段回答问题(B ).

for(t=1;t<=100;t++) {scanf(\ if(x<0) continue; printf(\A、x>=0时什么也不输出B、最多允许输出100个非负整数 C、printf函数永远也不执行D、当x<0时整个循环结束 7 以下程序的运行结果是(B ).

main( ){int i,x[3][3]={1,2,3,4,5,6,7,8,9}; for(i=0;i<3;i++) printf(\A、1,5,9 , B、3,5,7, C、3,6,9, D、1,4,7, 8 以下不正确的说法是:C语言规定(C)。

A、实参可以是常量,变量或表达式 B、实参可以为任何类型

C、形参可以是常量,变量或表达式 D、形参应与其对应的实参类型一致 9 在执行\文件包含\命令时,下列说法正确的是(A ).

A、作为一个源程序编译,得到一个目标文件.B、一个 include 命令可指定多个被包含文件. C、在编译时作为两个文件联结. D、被包含的文件可以是源文件或目标文件. 10 已定义char str1,str2[10];选择正确的输入语句(C ).

A、scanf(\、scanf(\C、scanf(\、scanf(\选择

1在C程序中,注释说明只能位于一条语句的后面错误 2.x*=y+8 等价于 x=x*(y+8)。正确

3.设o=1,p=2,q=3,则逻辑表达式!(o

4.在do-while循环中,当while表达式为\假\时,循环就停止了.正确 5 C语言中三种基本结构:顺序、选择、循环都只有一个入口. 正确 6 定义 int x[5],n;则x=x+n;或x++;都是不正确的. 正确

7在一个函数中定义的静态局部变量可以被另一个函数调用. 错误

8如果被包含文件中有全局静态变量,它们在用#include命令的源文件中有效. 正确 9指向某一变量的指针,就是该变量的内存地址. 正确 10 结构体变量的地址与其各成员具有相同的地址. 错误 填空

1.已知 i=5;写出语句 i+=012; 执行后整型变量 i 的十进制值是_15____.

2当a=1,b=2,c=3时,执行以下程序段后a=__3___. if (a>c) b=a; a=c; c=b; 3 若输入字符串:abcde<回车>,则以下while循环体将执行 __0___ 次. 4 while((ch=getchar())=='e') printf(\

5 数组在内存中占一段连续的存储区,由_____代表它的首地址. 数组名

6 C语言中调用_____函数来关闭文件. fclose

【程序设计】功能:对任意输入的 x,用下式计算并输出 y 的值。 5 x<10 y= 0 x=10 -5 x>10 #include \int fun(int n)

{ /*********Begin**********/ int m;

if(n<10) m=5;

else if(n==10) m=0; else m=-5;return m;

/********** End **********/ }

void main () {

int x,y; void TestFunc();printf(\ scanf(\

printf(\}

【程序改错】计算正整数num的各位上的数字之积。例如:输入252,则输出应该是20。 #include \long fun (long num)

{/**********ERROR**********/ long k; do

{ k*=num;

/**********ERROR**********/ num\\=10; }while (num); return k; }

main() {ong n;

printf(\ /**********ERROR**********/ scanf(\

/**********ERROR**********/ printf(\

}【参考答案】long k=1;【参考答案】 num/=10; num=num/10;

【参考答案】 scanf(\【参考答案】printf(\【程序填空】功能:以下程序是用选择法对10个整数按升序排序。 #include \

/***********FILL***********/

_____

void main()

{ int i,j,k,t,a[N]; for(i=0;i<=N-1;i++) scanf(\ { /***********FILL***********/ _____;

/***********FILL***********/ for(j=i+1; _____;j++) if(a[j]

/***********FILL***********/ if(_____)

{ t=a[i]; a[i]=a[k]; a[k]=t;} }

printf(\ for(i=0;i<=N-1;i++) printf(\

【参考答案】#define N 10【参考答案】k=i【参考答案】j=j【参考答案】k!=i 第六套

以下叙述中不正确的是(A)。

A、在C程序中,赋值运算符的优先级最低B、在C程序中,j++;是一条赋值语句 C、C程序中的#include和#define均不是C语句D、一个好的程序应该有详尽的注释 若变量已正确定义,执行语句scanf(\时,正确输入是(A )。 A、20,30,40B、2030,40C、20, 30 40D、20 30 40 int a=1,b=2,c=3; if(a>c)b=a;a=c;c=b;则c的值为(C)。 A、1 B、3 C、2 D、不一定

C语言的if语句中,用作判断的表达式为(A )。

A、任意表达式B、算术表达式C、逻辑表达式D、关系表达式 while(fabs(t)<1e-5) if(!(s/10))break; 循环结束的条件是(B )。 A、s/10==0 B、t>=1e-5 ||t<=-1e-5 && s>-10 && s<10 C、fabs(t)<1e-5 && !(s/10)D、fabs(t)<1e-5

若有语句char x[ ]=\则正确的描述是(D ).

A、x数组和y数组的长度相同. B、x数组的长度小于y数组的长度. C、x数组等价于y数组. D、x数组的长度大于y数组的长度.

设函数的调用形式如下: f((x1, x2),(y1,y2,y3)),则函数有 (A )个形参. A、2 B、4 C、3 D、5

设有宏定义#define SUB(x,y) (x)*y,且a=3,b=4,则 SUB(a++,b++) 的值为(D ). A、13 B、16 C、20 D、12 下列选项中正确的语句组是(C)。

A、char *s; s={\、char s[8]; s={\C、char *s; s=\、char s[8]; s=\判断

1一个C程序只能由一个主函数组成 错误 2 表达式 (j=3, j++) 的值是4. 错误

3 若float x=2.0,y=1.0; , 则条件表达式x>y?1:1.5的值为1.0. 正确 4 continue语句用于终止循环体的本次执行. 正确

5 在循环嵌套中,使用break语句只可以跳出所在循环. 正确

i!=k

6 引用数组元素时,下标可以是整型表达式或整型常量. 正确

7在主调函数中,必须要对被调用函数进行类型说明,否则在编译时会出现错误. 错误 8静态局部变量在整个程序运行期间都不释放. 正确

9下列的定义和赋值是正确的. int x=10,y=20,*p; p=&x; 正确

10共用体类型可以出现在结构体类型定义中,但结构体类型不能出现在共用体类型定义中.错误

四 1int x=2;z=++x+1; 则x的值为__3___.

2 当a=1,b=2,c=3时,执行以下程序段后c=___2__. if (a>c) b=a; a=c; c=b; 3若输入字符串:abcde<回车>,则以下while循环体将执行 _0____ 次. while((ch=getchar())=='e') printf(\

4 C语言中,数组元素的下标下限为__0___.

5若有以下整型数组aa[10],其值为 9 4 12 8 2 10 7 5 1 3 该数组可用的最小下标值是___0__.

【程序设计】功能:计算并输出给定整数n的所有因子之和(不包括1与自身)。 注意:n的值不大于1000。例如:n的值为855时,应输出704。 #include \int fun(int n)

{/********** End **********/ 【参考代码】 int s=0,i;

for(i=2;i

*******Begin**********/ }

void main()

{void TestFunc(); printf(\ TestFunc();} void TestFunc()

{ FILE *IN,*OUT; int iIN,iOUT,i; IN=fopen(\ { printf(\ }

OUT=fopen(\

{ printf(\ }

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

{ fscanf(IN,\ fprintf(OUT,\ fclose(IN); fclose(OUT); }

【程序改错】

功能:求如下表达式:

1 1 1 S = 1 + -- + ----- + ...... + -------------

1+2 1+2+3 1+2+3+......+n

五星文库wxphp.com包含总结汇报、考试资料、专业文献、外语学习、教学教材、行业论文、资格考试、党团工作、人文社科、办公文档、教程攻略、应用文书、旅游景点以及c语言真题20套等内容。

本文共10页123456>>10