川农《C语言(专科)》17秋在线作业答案答案
《C语言(专科)》17秋在线作业-0001
试卷总分:100 得分:0
一、 单选题 (共 20 道试题,共 100 分)
1.当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是( )
A.c=b=a;
B.(a=c)‖(b=c);
C.(a=c)&&(b=c);
D.a=c=b;
正确答案:----
2.请选出以下语句的输出结果( )printf("%d ",strlen(" "\065xff "));
正确选项:----
A.5
B.14
C.8
D.输出项不合法,无正常输出
专业答案:----
3.设有如下程序 :#include<stdio.h> main(){ int **k, *j, i=100;j=&i; k=&j;printf("%d ", **k);} 上面程序的输出结果是( )
专业答案:----
A.运行错误
B.100
C.i的地址
D.j的地址
正确选项:----
4.有以下程序 int fun(int x , int y , int *cp , int *dp){ *cp=x+y; *dp=x-y; }main(){ int a, b, c, d;a=30; b=50;fun(a,b,&c,&d);printf("%d,%d ", c, d);}输出结果是( )
正确答案:----
A.50,30
B.30,50
C.80,-20
D.80,20
正确选项:----
5.运行以下程序后,如果从键盘上输入 china#<回车>,则输出结果为( )#include<stdio,h>main(){ int v1=0,v2=0;char ch;while((ch=getchar())!='#')switch(ch){ case 'a';case 'h';default; v1++;case '0'; v2++;}printf("%d,%d ",v1,v2);}
专业答案:----
A.2,0
B.5,0
C.5,5
D.2,5
正确选项:----
6.函数调用:strcat(strcpy(str1,str2),str3)的功能是( )
A.将串str1复制到串str2中后再连接到串str3之后
B.将串str1连接到串str2之后再复制到串str3之后
C.将串str2复制到串str1中后再将串str3连接到串str1之后
D.将串str2连接到串str1之后再将串str1复制到串str3中
专业答案:----
7.有以下程序:#include main(){ int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf("%d,%d ",a,b); }输出结果是( )
专业答案:----
A.2,1
B.3,2
C.4,3
D.2,-1
正确选项:----
8.下列程序执行后输出的结果是( )#include 〈stdio.h〉f(int a){ int b=0;static c=3: a=c+ +,b+ +;returu(a); }main( ){ int a=2,i,k;for(i=0;i<2;i+ +) k=f(a+ +);printf("%d ",k);}
专业答案:----
A.3
B.0
C.5
D.4
专业答案:----
9.设有以下定义:int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};int (*prt)[3]=a,*p=a[0]则下列能够正确表示数组元素a[1][2]的表达式是( )
A.*((*prt+1)[2])
B.*(*(p+5))
C.(*prt+1)+2
D.*(*(a+1)+2)
专业答案:----
10.C语言的编译系统对宏命令的处理是( )
A.在程序运行时进行的
B.在程序连接时进行的
C.和C程序中的其它语句同时进行编译的
D.在对源程序中其它成份正式编译之前进行的
专业答案:----
11.若有宏定义如下#define X 5 #define Y X+1 #define Z Y * X / 2则执行以下printf语句后,输出结果是( )int a; a=Y;Printf("%d ", Z);Printf("%d ", - - a);
正确答案:----
A.7 6
B.12 6
C.12 5
D.7 5
正确答案:----
12.若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是( )
正确选项:----
A.1
B.2
C.2.0
D.2.5
专业答案:----
13.以下程序运行后,如果从键盘上输入book <回车>book <空格><回车>则输出的结果是( )#include<string,h>main(){ char a1[80],a2[80],*s1=a1, *s2=a2;gets(s1); gets(s2);if(! strcmp(s1,s2)) printf("*");esle printf("#"); printf("%d/n",strlen(strcat(s1,s2))); }
正确答案:----
A.*8
B.9
C.
6
D.
正确选项:----
*9
14.假设在程序中a,b,c均被定义成整型,并且已赋大于1的值,则下列能正确表示代数式1的表达式是( )
A.1/a*b*c
B.1/(a*b*c)
C.1/a/b/(float)c
D.1.0/a/b/c
正确答案:----
15.设有如下定义:char *aa[2]={"abcd","ABCD"};则以下就法中正确的是( )
正确答案:----
A.aa数组成元素的值分别是"abcd"和"ABCD"
正确答案:----
B.aa是指针变量,它指向含有两个数组元素的字符型一维数组
C.aa数组的两个元素分别存放的是含有4个字符的字符串的首地址
D.aa数组的两个元素中各自存放了字符'a'和'A'的地址
专业答案:----
16.执行以下程序段时x=-1; do {x=x*x; } while(! x);
正确选项:----
A.循环体将执行一次
B.循环体将执行两次
C.循环体将执行无限次
D.系统将提示有语法错误
正确答案:----
17.请选出合法的C语言赋值语句( )
A.a=b=58
B.i++
C.a=58,b=58
D.k=int(a+b)
正确答案:----
18.以下程序运行后,输出结果是( )main(){ char *s="abcde";s+=2;printf("%ld ",s); }
专业答案:----
A.cde字符c的ASCII码值
正确选项:----
B.字符c的地址
C.出错
19.以下有关宏替换的叙述不正确的是( )
A.宏替换不占用运行时间
B.宏名无类型
C.宏替换只是字符替换
D.宏名必须用大写字母表示
正确答案:----
20.在以下一组运算符中,优先级最高的运算符是( )
A.<=
B.=
C.%
D.&&
正确答案:----
川农《C语言(专科)》17秋在线作业答案历年真题如下: