热门搜索 :
考研考公
您的当前位置:首页正文

2012年秋季学期《C语言》在线考试满分答案

来源:伴沃教育
1. 判断字符串的长度,应该使用的函数是 A. strcat B. strcmp C. strcpy D. strlen

满分:2 分

2. 若有:int a[ ]= {1,2,3,4,5,6,7,8},*p=a ; 不能正确表示a[5]的表达式是 A. p + 5 B. p[5] C. *(a +5) D. *(p +5) 满分:2 分

3. 对于int a=99, b='b'; printf(“%c,%d”, a , b);的结果是 A. 99, b B. c, 98 C. 99, 98 D. c, b

满分:2 分

4. 能将高级语言编写的源程序转换为目标程序的软件是 A. 汇编程序 B. 编辑程序 C. 编译程序 D. 解释程序 满分:2 分

5. 以下关于数组的描述正确的是

A. 数组大小固定,但是可以有不同类型的数组元素

B. 数组大小可变,但是所有数组元素的类型必须相同 C. 数组大小固定,所有元素的类型必须相同 D. 数组大小可变,可以有不同类型的数组元素 满分:2 分 6.

下述语句的输出为int m=-1;printf(“%d,%u,%o”,m,m,m); A. -1,-1,-11

B. -1,32767,-177777 C. -1,32768,177777 D. -1,65535,177777 满分:2 分

7. 结构化程序设计方法中有三种基本控制结构,以下不正确的是 A. 顺序结构 B. 选择结构 C. 循环结构 D. 数组结构 满分:2 分

8. 已知char b[5],*p=b; ,则正确的赋值语句是 A. b=“abcd” ; B. *b=“abcd”; C. p=“abcd”; D. *p=“abcd”; 满分:2 分

9. 下列错误的表达式是 A. -x++ B. (-x)++

C. x+++y D. ++x+y

满分:2 分

10. 用数组名作为函数调用时的实参,则实际传递给形参的是 A. 数组的第一个元素值 B. 数组中全部元素值 C. 数组的首地址 D. 数组的元素个数 满分:2 分

二、其他题(共 10 道试题,共 50 分。) 1. 读程序写出程序执行结果 #include void main() { int k=1; switch(k)

{ case 0: printf(\"A\"); break; case 1: printf(\"B\"); case 2: printf(\"I\"); case 3: printf(\"G\"); break; default: printf(\"E\"); } } 答:BIG

满分:5 分 2.

读程序写出程序执行结果 #include void main() { int x=12,y=0; if(x>=0) { if(x>0) y=1; } else y=-1;

printf(“y=%d\\n”,y); } 答:y=1

满分:5 分 3.

读程序写出程序执行结果 #include #define S(a,b) (a)*(b) void main() { int a=3 ,area; area=S(a,a+3) ;

printf(\"area=%d\\n\; }

答:area=18

满分:5 分 4.

读程序写出程序执行结果 #include int stre(char *s) { int num=0;

while(*(s+num)!= '\\0’)num++; return num; }

void main()

{ char str[]=“students”,*p=str; printf(“%s,%d\\n”,p,stre(p)); }

答: students,8

满分:5 分 5.

读程序写出程序执行结果 #include void main() { int i,j,m=0; for(i=1;i<=10;i+=3) for(j=3;j<10;j+=4) m++;

printf(“m=%d\\n”,m); }

答:m=8

满分:5 分 6.

读程序写出程序执行结果 #include void main() { int i=0,a=0; while( i<20 ) { for(;;)

if((i%10)= =0) break; else i- -; i+=11; a+=i; }

printf(\"%d\\n\} 答:32

满分:5 分 7.

读程序写出程序执行结果 #include int a=100,b=200; void f( )

{ printf(“%d,%d\\n”,a,b); a=1;b=2; }

void main() { int a=5,b=7 ; f( );

printf(“%d,%d\\n”, a,b) ; } 答: 100,200 5,7

满分:5 分 8.

读程序写出程序执行结果

#include void main() { int y=-1 ; do { y++; }while(y--);

printf(\"%d\\n\",y--); } 答:-1

满分:5 分 9.

读程序写出程序执行结果 #include int m=2; int fun(int x,int y) { int m=3; return(x*y-m); }

void main() { int a=7, b=5;

printf(\"%d\\n\ } 答:16

满分:5 分 10.

读程序写出程序执行结果 #include void main() { int t, n=9; t=0; do { t+=n; n-=2; } while (n>0); printf(\"%d\\n\ } 答:25

满分:5 分

三、简答题(共 3 道试题,共 30 分。)

1. 编程:编写函数change使输入的字符串按反序存放,在主函数中输入和输出字符串。例如输入是:abcdefg,则输出为:gfedcba(备注:建议学员在做编程序题目时,事先在记事本或word文档中编写,然后拷贝至答题区域即可。)

#include #include void chang(char ch[]) {

int i;

int len =strlen(ch); i=0; char c;

int j = len-1; while(j>i) {

c=ch[i]; ch[i] = ch[j]; ch[j] =c; i++; j--; } }

int main() {

char ch[81]; gets(ch);

printf(\"\\nbefore change:\\n\"); printf(\"%s\ chang(ch);

printf(\"\\nafter change:\\n\"); printf(\"%s\ getchar(); return 0; }

满分:10 分

2. 编程:写一个判断素数的函数。要求在主函数中输入一个正整数以及打印函数调用后返回的相应的判断信息。(备注:建议学员在做编程序题目时,事先在记事本或word文档中编写,然后拷贝至答题区域即可。)

#include #include

int is_prime(int m) {

int index; int max; if(m < 2)

return 0; max=(int)sqrt(m);

for(index = 2; index <= max; index++) {

if (0 == m % index) return 0; }

return 1; }

void main() {

int n,c;

scanf(\"%d\ c=is_prime(n); if(c==1)

printf(\"prime\\n\"); else

printf(\"not prime\\n\"); }

满分:10 分

3. 编程:对N个整数进行从大到小顺序排列。(备注:建议学员在做编程序题目时,事先在记事本或word文档中编写,然后拷贝至答题区域即可。)

#include #define N 5 void main() {

int i,j,k,a[N],t;

printf(\"请输入%d个整数:\ for(i=0;ifor(j=i+1;jif(a[i]!=a[k])

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

} for(i=0;i

因篇幅问题不能全部显示,请点此查看更多更全内容

Top