…………试卷装订线 ……………… 装订线内不要答题,不要填写考生信息………………试卷装订线 …………
 
专业班级
学院
武汉理工大学考试试卷A卷)
2012  ~2013 学年 2 学期 计算机程序设计基础 C语言)课程
时间120分钟, 48 学时,2.5 学分,总分100分,占总评成绩70 %   
题号
合计
满分
20
20
15
15
30
100
得分
得分
                一、选择题(本题20分,每小题1)
1. int a,b,则表达式(b=2, a=5, b++, a+b)的值是(     
A. 2          B. 5        C. 7        D. 8
2. int a=7 float x=2.5, y=4.7, 则表达式x+3%(int)(x+y/4的值是(     
A. 2.75        B. 3.5        C. 2.5      D. 0.0   
3. char cl; , cl为小写英文字母字符的正确表达式为(     
A. ’a’<=c1<=’z’    B. cl>=’a’&&cl<=’z’
C. cl>=a&&c1<=z    D. ’a’<=c1| |’z’>=c1
4. 一维数组a的正确说明语句为(     
A. int a10);    B. int n=10, a[n]
C. int n    D. #define SIZE 10 //位于程序首部
scanf(″%d,n);    int a[SIZE]
int a[n]
5. 已知字符’A’ASCII码值是65,char cl=’A’, c2=’D’
则执行语句printf(″%d,d\n,cl,c2-2);后的输出结果是(     
A. A, D    B. A, B
C. 65, 68     D. 65, 66
6. 正确的条件语句为(     
A. if((a=b;>0t=a    B. if((a=b>0then t=a
C. ifa>bt=a    D. ifa<b={a++b++});
7. 若有下列程序段:
int x=l, y=2x=x+yy=x-yx=x-y
则执行后xy的值分别为(     
A. 12    B. 22
C. 21                             D. 11

8. int k,a,bunsigned long w=5double x=1.42
则不符合类型要求的表达式是(     
A. x%(-3    B. w+=2
C. k=a=2,b=3    D. a+=b=4*a=3
dubbo是什么意思中文9. int a=3,b=4,printf(“%d,d,”(a,b,b,a));的输出结果是(     
A. 3,4    B. 4,3
C. 3,4,4,3     D. 4,3,3,4
10. int i=l, k=2, 则错误的循环语句是(     
A. fori=0,k=-1i++,k++);    B. for;k-1;i++);
C. fori=1,k=4k--i++);    D. for;k--;);
11.以下说法中正确的是(   )
A.字符型变量可以存放字符串
B.递归调用是指函数调用自己
C.所有的外部函数只能在本文件中被调用
D.在循环体中break语句和continue语句的作用都是结束循环
12. char sl[ ]=string1,s2[8], *s3, *s4=string2;,则对系统函数strcpy的错误调用是(   
A. strcpys1, string1);    B. strcpys4, string2”);
C. strcpystring2,s2);    D. strcpys3, string1”);
13. 正确的数组定义及初始化的是(     
A. char a[10]={string}    B. int a[5]={0,1,2,3,4,5}
C. char a={string}    D. int a[ ]={x,y,z}
14.定义函数时,缺省函数的类型声明,则函数类型取缺省类型(    )
A.void    B. char      C. float      D. int
15.int a,b,a+=b++;等价的是(     
A.a=b++    B.a=++b    C.a=a+b++    D.a=a+++b
16.执行语句k=5*3后,变量k的当前值是(    )
A. 15          B. 125              C. 8              D. 6
17.以下程序段的输出结果是()
char str[12]={‘s’,‘t',‘d’,‘i’,‘o’};
printf(“%d\n",strlen(str));
A.5          B.6            C.11            D.12
18.主函数头中的“main”是(     
A.保留字    B.函数名    C.变量名    D.类型名
19.a=1,b=2,c=3,d=4,则表达式:a<b?a:c<d?a:d的结果为(    ).
A.4      B.3          C.2        D.1
20.下列格式符中,可以用于以8进制形式输出整数的是(    )
    A. %d      B. %8d      C. %o      D. %1d
选择题答案
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
得分
二、填空题(每空2分,共20)
21.设有宏定义#define X 10-4,则printfd\n6*X);的输出结果是___________
22.设double x;,则表达式x=5,(x+5/2的值是___________
23.能正确表述2<x<3x<-10”的C语言表达式是___                  _______
24.设有循环语句fori=-1;i<=5;i++i++;,则其循环体执行的次数是___________
25.调用系统函数strcmp(),必须在程序的开头写上一条文件包含命令是___      ________
26.设char s[15]={programming};,则printfd\nstrlens));的结果是___________
27.设float a[3][4]={{7.58.2}{2.33.71.2}{1.03.4}};,则a[2][1]的值是___________
28.设char a[20]={Switch}*p=a:,则*p+2)的值是___________
29.在函数间传递数据时,函数的形参和调用时的实参都是数组名,传递方式为___________
30. 若声明“char  a15=″Good morning!″;语句“printf(″%s″a+2);”的输出结果为
___              ___
得分
三、程序阅读题.(读下列程序,写出程序的输出结果。每题5分,共15)
31main()
{ int x=1,a=0,b=0
switchx
{
case 0: a++; break
case l: b++;
case 2: a++; b++; break
case 3: a++; b++
}
printf(″a=db=d\n″,a,b);
该程序执行后输出的结果是               
32main()
{ int ab*p1=a,*p2=b
      *p1=50*p2=40
  ifci持续集成主要关注*p2<*p1*p2=*p1;
printf(″a=db=d\n″,a,b;
}
运行结果:                   
33fint b
    { static int y=3
      returnb+y++);
    }
    main()
    { int a=2ik;
      fori=0i<2;i++
        printf(″%d\n″,fa++));
    }
执行后输出结果是           
…………试卷装订线 ……………… 装订线内不要答题,不要填写考生信息………………试卷装订线 …………
得分
四、根据下列各编程题题意填空(每题5分,共15)
34. 从键盘输入10个整数,用冒泡排序法由小到大进行排序。
  #define N 10
  main()
  { int i,j,t,a[N]
fori=0;i<Ni++ scanfd&a[i]);
fori=0;i<N-1;i++
for冒泡排序代码c语言j=N-1j>=i+1__1____  
ifa[j]<a[j-1]滚动条自动回到顶部怎么回事
{ t=a[j]__2______a[j-1]=t}     
fori=0i<Ni++printf(″%5d, __3_____;   
printf(″\n″);
}
elementor无法加载
1:                2                3                 
35.对两个整型变量先进行输入和输出,将它们的值交换后再输出。20 
main
{  int a,b,__1____
scanf(“%dd,__2_______);
printf(“a=d,b=d\n,a,b);
temp=a, _3______, b=temp
printf(“a=d,b=d\n,a,b);
}
1:                2                3                 
36.为二维数组各个元素输入数据,计算全部元素之和并输出。
#define  N  5
main
{
int i,j,aN][N,sum=__1_____
fori=0i<Ni++
forj=0j<Nj++
{
      scanf(“%d,&a[i][j]);
sum+=___2___________
}
printf(“sum=d\n,___3________);
}
1:                2                3                 
五、编程题 (每题10分,共30)
37.编程从键盘输入一个字符串,将它们逆序,并输出。例如输入“table,则输出“elbat
38.有一函数:
                      x+27        (x<1)
            y=      5x2-19      (1x<15)
                      3x+14        (x15)
写一程序,输入x,输出y。
39.输入一个10行,6列的整型二维数组,求数组中的最小元素的值及最小元素所在行号和列号。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。