武汉理工大学2012年c语言考试AB卷试题及答案
…………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线…………
…………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线………
…
…………装订线………………装订线内不要答题,不要填写信息………………装订线…………
武汉理工大学考试试题答案(A卷)2011 ~2012 学年2 学期计算机技术基础(C语言)课程
六、单选题(每小题1分,共30分)
七、填空题(每空2分,共20分)
1. 函数。
2. 63,171
3. y,y,y
4. 越界
5. strcpy(s1,s2); 或 strcpy(s1, "books");
6. 单向值传递
7. 20
八、判断题(每小题1分,共10分)
九、程序阅读,写出各小题的运行结果(每小题5分,共25分)
1. A k=2
B k=4
C k=7
E k=15
2. 2
3. 28
4.
└─┘
5
└─┘
6
└─┘
7
└─┘
8
└─┘
9
└─┘
└─┘
1
└─┘
2
└─┘
3
└─┘
4
5.#####
####
###*
##**
#** *
十、编写程序(7分+8分+10分=25分)
1. main( )
{
int year, month, days;
scanf("%d%d",&year,&month); (1分) switch(month)
{
case 1: case 3: case 5: case 7: case 8: case 10:
case 12: days=31; break; (2分) case 2: if (year%4= =0&&year%100!=0 || year%400= =0) days=29;
else days=28;break; (2分) case 4: case 6: case 9:
case 11: days=30; break; } (1分) printf("The result is: %d.\n",days); (1分) }
2. main()
{ int i,k,flag;
long s, t;
s=0;
flag=1; (2分) for(k=1;k<=10;k++)
{ t=1;
for(i=1;i<=k;i++)
t=t*i; (2分) s=s+t*flag;
flag = -flag; (2分) }
printf("\ns=%ld",s); (2分) }
3. main()
{ int a[20][2], i, j, max;
for(i=0;i<20;i++)
for(j=0;j<2;j++)
scanf(“%d”,&a[i][j]);(2分) max=a[0][1];
for(i=1;i<20;i++)
if(a[i][1]>max) max=a[i][1]; (2分) printf("max=%d\n",max); (1分) find(a, 9) ; (1分) }
find (int array[20][2], int n)
{ int i;
for(i=0;i<20;i++)
if(n= =array[i][0]) break; (2分) if(i<20)
printf(“Student %d: Score %d\n”,array[i][0],array[i][1]);
else
printf(“Not Found!\n”);(2分) }
…………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线…………
…………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线………
…
…………装订线………………装订线内不要答题,不要填写信息………………装订线…………
武汉理工大学考试试题答案(B卷)2011 ~2012 学年2 学期计算机技术基础(C语言)课程
十六、单选题(每小题1分,共36分)
1 2 3 4 5 6 7 8 9 10 11 12 13
A D A D A C A D C A
B D B D
C A B A
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
C D A B C B D A B D A D D A B D B A 十七、填空题(每空2分,共24分)
1. 函数。
2. 63,171
3. y,y,y
4. 定义部分,执行部分
5. auto
6. strcpy(s1,s2)或strcpy(s1,"books")
7. 单向值传递
8. 20
十八、判断题(每小题1分,共10分)
1 2 3 4 5 6 7 8 9 10
√××√×√×××√
十九、程序阅读,写出各小题的运行结果(每小题4分,共20分)
1. 4455675
2. 8
3. 18
4.
└─┘└─┘└─┘
6
└─┘└─┘└─┘
8
└─┘└─┘└
10
5. ####
###
##*
#**
二十、编写程序(10分)
main()
{ int a[4][6],i,j;
for(i=0;i<4;i++)
for(j=0;j<5;j++)
scanf(“%d”,&a[i]); (2分) for(i=0;i<4;i++)
a[i][5]=0; (3分) for(i=0;i<4;i++)
for(j=0;j<5;j++)
a[i][5]+=a[i][j]; (3分) for(i=0;i<4;i++)
{ for(j=0;j<6;j++)
printf(“%4d”, a[i]);
printf(“\n”);
} (2分) }