最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

c语言程序设计试卷及答案(A)

来源:动视网 责编:小OO 时间:2025-09-24 17:01:45
文档

c语言程序设计试卷及答案(A)

《C语言程序设计》2013至2014学年度第1学期期末(A)卷专业班级姓名学号题号一二三四五六七八合计得分评卷人(考生注意:考试时间为120分钟。答案须写在答题纸上,并注明题号,考试结束后将试卷连同答题纸一齐交)一、单项选择题(每小题2分,共40分)1.在一个C语言程序中,有并且只能有一个()函数。A.main函数B.自定义函数C.外部函数D.内部函数2.一个C语言程序,总是从()函数开始执行。A.main函数B.自定义函数C.外部函数D.内部函数3.下列标识符中,不能用作变量名的是()。A.
推荐度:
导读《C语言程序设计》2013至2014学年度第1学期期末(A)卷专业班级姓名学号题号一二三四五六七八合计得分评卷人(考生注意:考试时间为120分钟。答案须写在答题纸上,并注明题号,考试结束后将试卷连同答题纸一齐交)一、单项选择题(每小题2分,共40分)1.在一个C语言程序中,有并且只能有一个()函数。A.main函数B.自定义函数C.外部函数D.内部函数2.一个C语言程序,总是从()函数开始执行。A.main函数B.自定义函数C.外部函数D.内部函数3.下列标识符中,不能用作变量名的是()。A.
《C语言程序设计》 2013至 2014 学年度第 1 学期期 末 (A)卷

专业班级                    姓名                 学号                   

题  号

合计
得  分

评卷人
(考生注意:考试时间为120分钟。答案须写在答题纸上,并注明题号,考试结束后将试卷连同答题纸一齐交)

一、单项选择题(每小题2分,共40分)

1.在一个C语言程序中,有并且只能有一个(    )函数。

A. main函数      B.自定义函数      C.外部函数     D.内部函数

2.一个C语言程序,总是从(    )函数开始执行。

A. main函数      B.自定义函数      C.外部函数     D.内部函数

3.下列标识符中,不能用作变量名的是(   )。

A. _1234_     B. _1_2        C. int_2_    D. 2_int_

4.下列字符常量不合法的是(   )。

A. ‘2’                B. ‘\t’            C. ‘ab’           D. ‘ \\n’  

5.执行以下语句后的输出结果为(   )。

int x; float y; y=3.6; x=(int)y+10; printf(“x=%d,y=%f”,x,y); 

A. x=13.6,y=3.600000    B. x=13,y=3.600000        C. x=13,y=3    D. x=13,y=3.6

6.以下哪种变量类型在C语言中不存在 (   )。

A. 整型变量        B.实型变量        C. 字符串变量            D.字符变量

7.设m=10,n=4,则赋值运算m%=n+1执行后m的值是(   )。

A. 1                    B. 2                    C. 3                  D. 0

8.下面语句执行后输出结果为(   )。

int x=10,y=3,z;  printf(“%d\\n”,z=(x%y,x/y));}

A. 0                    B.1                    C. 3                 D. 4

9. 下面语句执行后输出结果为(   )。

int x=10,y=10,z=10;  printf(“%d,%d,%d ”,x++,--y,++z);}

A. 10,10,10            B. 10,9,11            C. 9,10,11        D. 11,10,9

10.以下选项中不是C语句的是(   )。

A.    {int i; i++; printf("%d\\n", i); }                B.    ;

C.    a=5,c=10                                D.    { ; }

11.以下程序的输出结果是(   )。

  main( )

  { int x=2,y=-1,z=2;

if( x if(y<0) z=0;

     else z=z+1;

   printf(“%d”,z);  }

A. 0                    B. 1                   C. 2                D. 3

12.不能表达:x为奇数时表达式为“真”,偶数时表达式为“假”的表达式是(   )。

A. x%2= =1            B. !(x%2= =0)      C. !(x%2)            D. x%2

13.以下程序段中while语句的循环次数是(   )。

   int i=0;while(i=1)  {i++;}

A.无限次     B. 有语法错误,不能执行       C. 一次也不执行     D. 执行一次

14.假设a,b均为字符数组以下正确的输入语句是(   )。

A.gets(a,b);    B. scanf(“%s%s”,a,b); C. scanf(“%s%s”,&a,&b);D.gets(“a”); gets(“b”);

15.若有定义:int a,*p; 则以下正确的赋值表达式是    (   )。

A.    p=&a            B.    p=a             C.    *p=&a            D.    *p=*a

16.以下函数调用语句中,func(a+b,c-d+100);含有的实参个数是(   )。

A.    1                B.    2             C.    4                D.    5

17.有以下定义:struct person{char name[9]; int age;}

struct person class[10]={“Johu”,17,“Paul”,19,“Mary”,18,“Adam”,16,};

则下面能输出字母M的语句是(   )。

A.    printf(“%c\\n”,class[3].name);            B.    printf(“%c\\n”,class[3].name[1]);

C.    printf(“%c\\n”,class[2].name[1]);        D.    printf(“%c\\n”,class[2].name[0]);

18.下列关于break和continue语句的叙述正确的是(  )。

A.都可以出现在程序的任何位置  B.break语句可以出现在循环体或switch语句中C. continue语句可以出现在循环体或switch语句中    D.两者必须配对使用

19.用作累加器和累乘器的变量应该赋初始值为(  )和(  )。

A.0   0       B.0    1       C.1    0       D.1    1

20.下列语句(   )可以实现变量a与b的数值交换。

A.{a=b;b=a;}    B.{t=a;b=a;a=t;}    C{t=a;a=b;b=t;}.      D.以上都正确

二、填空(每空1分,共20分)

1. C语言源程序文件的后缀是_____,经过编译后,生成文件的后缀是_____,经过连接后,生成文件的后缀是_____。

2. 表达式3.5+1/2+56%10的结果为_____。

3. C语言中的三种逻辑运算符分别是_____、_____、_____。

4. 填空完成以下计算s=1+1/2+1/3+……+1/10的程序

  main( )

  { int n; float s=1.0; 

for(n=10; _____; _____ )

s=s+_____;  printf(“%f”,s);}

5. 以下程序的功能是用选择法对数组a中的整数由小到大进行排序。

void sort(int b[],int n)

  { int i,j,t;

      for(i = 0;i         for(_____;j            if(b[i]_____b[ j])

             {t = b[i];_______;b[ j]=t;}}

   main()

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

    int i;

     sort(a,8);

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

       printf(“﹪5d”,a[i]);

     printf(“\\ n”);}

6. printf("%5.3f\\n",123456.12345);输出为_____。

7. 存储字符串“program”的字符数组至少需要____个元素。

8指针变量可以加减一个整数,例如:_______________;指针变量可以有空值,例

如_____________________________________________________。  

9以下程序从键盘输入10个学生的有关数据,然后把它们转存到磁盘文件上去。

#include

#define SIZE 10 

struct Student_type    <-------------------

{ char name[10];            程

   int num;                序

   int age;                 段

   char addr[15];            1

 }stud[SIZE];  <-----------------

void save( )                                             <-------------------

{ FILE *fp;   int i; 

   if((fp=fopen("stu.dat                    程

   { printf("cannot open file\\n");                                  序

      return;                                                 段

   }                                                         2

for(i=0;i      if(fwrite(&stud[i],sizeof(struct Student_type),1,fp)!=1) 

         printf("file write error\\n"); 

   fclose(fp); 

}                                                        <-------------------

int main()                                                 <-------------------

{ int i; 

   printf(“enter data of students:\\n");                                       程

   for(i=0;i     scanf("%s%d%d%s",stud[i].name,&stud[i].num,&stud[i].age,stud[i].addr);    段

   save( );                                                             3

   return 0; 

}                                                        <-------------------

请回答问题:程序段1完成的功能是___________________________________;

            程序段2完成的功能是___________________________________;

            程序段3完成的功能是___________________________________。

三、程序阅读(每小题5分,共30分)

1. 执行以下程序:

   main( )

   { int i,j,k,t;  

scanf(“%d”,&t);  

i=t%10; t=t/10; j=t%10; k=t/10;  

printf(“%d”,i*100+j*10+k);

}

   当输入123时,输出结果为____。

2. 以下程序的输出结果是____。

   main( )

   { int i=0,j=0,a=6;

if((++i>0)||(++j>0)) a++; printf(“i=%d,j=%d,a=%d”,i,j,a); }

3. 以下程序的输出结果是____。

   main( )

   { int n=10;

while(n>7)

{  printf(“%d,”n);  n-- ;}

4. 以下程序的输出结果是____。

fun1(int a,int b)

{    int c;

a+=a; b+=b;

c=fun2(a,b);

return c;

}

fun2(int a,int b)

{    int c;

c=a*b%3;

return c;

}

main( )

{    int x=2,y=4;

printf("%d\\n",fun1(x,y));

}

5. 若有以下程序段,执行后的输出结果是____。

int a=0,b=0,c=0;

c=(a-=a-5),(a=b,b+3);

printf(“%d,%d,%d\\n”,a,b,c);

6. 若有以下程序段,执行后的输出结果是____。

 main()

{ int i;

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

{if(i%4= =0)continue;

else  printf("%d,",i);}   }

四、编程题(每小题5分,共10分)

1. 编程实现计算1到100之间的奇数之和,偶数之和。

2. 编写程序求e的值,当通项小于10-7停止计算。e≈1+

五、附加题(不计入总分)

1.请完整写出用递归方法求n!的C语言程序;

2.请完整写出用递归方法实现汉诺塔问题的C语言程序;

3.编写一个找出所有“水仙花”数的C语言程序。

参及评分标准

一、单项选择题(每小题2分,共40分)

1~5 AADCB     6~10CDCBC     11~15CCABA     16~20BDBBC

二、填空(每空1分,共20分)

1. .c   .obj   .exe

2. 9.5

3. &&  ||  !

4.n>1,n--,1.0/n 或者n>=2,--n,1.0/(12-n)等类似形式。

5. j=i+1,>,b[i]=b[j]  

6. 123456.123

7. 8

8.P++   P=NULL

9.定义一个结构体类型的数组变量,用来存放学生信息;

  自定义函数save用来在磁盘上建立文件并把学生信息通过frwrite函数写到磁盘文件;

  主函数完成从键盘输入学生信息,然后调用save函数。

三、程序阅读(每小题5分,共30分)

1.321   

2.i=1,j=0 ,a=7

3. 10,9,8,    

4. 2      

5.0,0,5      

6.3,5,6,7,9,      

四、编程题(每小题5分,共10分)

1. 编程实现计算1到100之间的奇数之和,偶数之和。

答案(略),评分标准,首先实现功能,其次看设计规范,酌情扣减。

2. 编写程序求e的值,当通项小于10-7停止计算。e≈1+

答案(略),评分标准,首先实现功能,其次看设计规范,酌情扣减。

五、附加题(不计入总分)

答案(略)

文档

c语言程序设计试卷及答案(A)

《C语言程序设计》2013至2014学年度第1学期期末(A)卷专业班级姓名学号题号一二三四五六七八合计得分评卷人(考生注意:考试时间为120分钟。答案须写在答题纸上,并注明题号,考试结束后将试卷连同答题纸一齐交)一、单项选择题(每小题2分,共40分)1.在一个C语言程序中,有并且只能有一个()函数。A.main函数B.自定义函数C.外部函数D.内部函数2.一个C语言程序,总是从()函数开始执行。A.main函数B.自定义函数C.外部函数D.内部函数3.下列标识符中,不能用作变量名的是()。A.
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top