C语言

C语言练习测试试题

时间:2024-10-28 18:15:43 C语言 我要投稿
  • 相关推荐

C语言练习测试试题

  引导语:编程语言是计算机独有的,以下是小编整理的C语言练习测试试题,欢迎参考阅读!

C语言练习测试试题

  一、判断题:(12分 每题2分)

  1、C语言规定:在一个源程序中,main函数的位置必须在最开始。

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

  3、凡是函数中未指定存储类别的局部变量,其隐含的存储类别为静态存储。

  4、C语言中规定函数的返回值的类型是由return语句中的表达式类型所决定。

  5、在C语言中对文件操作必须先关闭当前文件,然后再打开一个新文件。

  6、C语言程序的基本单位是语句。

  二、选择题:(20分 每题2分)

  1.假设已定义char a[10]和char *p=a, 下面的赋值语句中,正确的是:

  A) a[10]=“Turbo C”;

  B) a=“Turbo C”;

  C) *p=”Turbo C”;

  D) p=”Turbo C”;

  2.下面关于运算符优先顺序的描述中正确的是:

  A)关系运算符<算术运算符< 赋值运算符< 逻辑与运算符

  B)逻辑运算符<关系运算符< 算术运算符< 赋值运算符

  C)赋值运算符<逻辑与运算符< 关系运算符< 算术运算符

  D)算术运算符<关系运算符< 赋值运算符< 逻辑与运算符

  3.以下正确的描述是。

  A)continue语句的作用是结束整个循环的执行

  B)只能在循环体内和switch语句体内使用break语句

  C)在循环体内使用break语句或continue语句的作用相同

  D)从多层循环嵌套中退出时,只能使用goto语句

  4.用8位无符号二进制数能表示的最大十进制数为

  A) 127 B) 128 C) 255D)256

  5.下列叙述中正确的是:

  A) C语言中既有逻辑类型也有集合类型

  B) C语言中没有逻辑类型但有集合类型

  C) C语言中有逻辑类型但没有集合类型

  D) C语言中既没有逻辑类型也没有集合类型

  6.以下对C语言函数的有关描述中,正确的是:

  A) 调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参

  B) 函数既可以嵌套定义又可以递归调用

  C) 函数必须有返回值,否则不能使用函数

  D) 程序中有调用关系的所有函数必须放在同一个源程序文件中

  7.在C语言中,不正确的int类型的常数是:

  A)32768  B) 0

  C) 037   D) 0xaf

  8.以下叙述中不正确的是:

  A) 在不同的函数中可以使用相同名字的变量

  B) 函数中的形式参数是局部变量

  C) 在一个函数内定义的变量只在本函数范围内有效

  D) 在一个函数内的复合语句中定义的变量在本函数范围内有效

  9.以下说法中正确的是:

  A) #define和printf都是C语句

  B) #define是C语句,而printf不是

  C) printf是C语句,但#define不是

  D) #define和printf都不是C语句

  10.若有以下定义和语句:doubler=99,*p=&r; *p=r;则以下正确的叙述是:

  A) 以下两处的*p含义相同,都说明给指针变量p赋值

  B) 在“doubler=99,*p=&r;”中,把r的地址赋值给了p所指的存储单元

  C) 语句“*p=r;”把变量r的地址值赋给指针变量p

  D) 语句“*p=r;”取变量r的值放回r中

  三、填空题:(24分 每空2分)

  1、下面程序的功能是:输入一行字符,统计其中有多少个单词,单词之间

  用空格分开。请填空完成。

  # include

  main()

  {charstr[81];

  int I,(【1】);

  charc;

  gats(str);

  for(I=0;(【2】 )!=’’;I++)

  if(c==’ ’)word=0;

  elseif( 【3】 )

  {word=1;

  (【4】 )}

  printf(“There are %d word in line. ”,num);

  }

  2、下面程序的功能是:用选择排序法对数组中10个数据按由小到大排序。请填空完成。

  voidsort(int a[],int n)

  {( 【5】 )

  for(I=0;I<n-1;I++)

  { (【6】 )for(j=I+1;j<n;j++)

  if(a[j]<a[k])k=j;

  if( (【7】 )){t=a[k];a[k]=a[I];a[I]=t;}

  }

  }

  main()

  {intb[10],I;

  printf(“enter the array ”);

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

  scanf(“%d”.&b[I]);

  ( 【8】 )

  printf(“the sorted array: ”);

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

  printf(“%d “,b[I]);

  printf(“ ”);

  }

  3、判断m是否是素数

  #include

  main()

  {

  int m,i,k;

  scanf(“%d”,&m); (【9】 )

  for(i=2;i<=k;i++)

  if(m%i==0) (【10】 );

  if(i>=k+1) printf(“%d is a primenumber ”,m);

  else printf(“%d is not a prime number ”,m);

  }

  4、假设当年产值为100,工业产值的增长率分别为6%、8%、10%、12%时,求工业产值分别经过多少年可实现翻番。请填空完成。

  main()

  {int y[4],i;

  floats[4]={100,100,100,100},c[4]={.06,.08,.10,.12};

  clrscr();

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

  {y[i]=0;

  while( 【11】 )

  {s[i]=s[i]*(1+c[i]);

  ( 【12】 )}

  printf(" y=%d s=%.2f c=%.2f",y[i],s[i],c[i]);

  }

  }

  四、读程序,写出程序运行结果。(24分 每题4分)

  1.

  main()

  {int x=10,y=10,I;

  for(I=0;I>8;y=++I)

  printf(“%d%d”,x--,y);

  }

  2.

  main()

  {int m=37,n=13;

  while(m!=n)

  {while(m>n)

  m=m-n;

  while(n>m)

  n-=m;

  }

  printf(“m=%d ”,m);

  }

  3.

  main()

  {int x=9;

  for(;x>0;x--)

  {if(x%3==0) {printf(“%d”,--x);

  continue; }

  }

  }

  4.

  main()

  { inta=7,b=2;

  float x=2.5,y=4.7,z;

  z=x+a%3*(int)(x+y)%2/4;

  printf(“%f ”,z);

  z=(a+b)/2+(int)x%(int)y;

  printf(“%f”,z);

  }

  5.

  main()

  {int x[]={0,1,2,3,4,5,6,7,8,9};

  ints,I,*p;

  s=0;

  p=&x[0];

  for(I=1;I<10;I+=2)

  s+=*(p+I);

  printf(“sum=%d”,s);

  }

  6.

  main()

  {int k=4,m=1,p;

  p=func(k,m);

  printf("%d",p);

  p=func(k,m);

  printf("%d",p);

  }

  func(inta,int b)

  {static int m=0,i=2;

  i+=m+1;

  m=i+a+b;

  return(m);

  }

  五、编程题:(20分 每题10分)

  1、利用指针完成。输入两个整数,按先大后小的顺序输出。

  2、编程完成两个字符串的连接。(不使用strcat( )函数)。

【C语言练习测试试题】相关文章:

C语言练习试题07-01

C语言模拟试题练习08-11

C语言测试试题及答案08-02

C语言测试题及答案07-03

C语言考前练习试题及答案09-16

C语言考试试题练习11-06

C语言临考练习试题06-26

C语言测试题及答案解析11-04

常用C语言测试题及答案09-12

C语言考试模拟测试题10-21