C语言上机题库百科园第章!南信大!
- 格式:docx
- 大小:50.82 KB
- 文档页数:38
第六章单选若已定义char s[10];则在下面表达式中不表示s[1]的地址是()。
A.&s[1]B.&s[0]+1C.s+1D.s++下面程序段的运行结果是()。
char a[ ]=”language” , *p ;p=a ;while (*p!='u') { printf(“%c”,*p-32); p++ ; }nguagengUAGENGUAGENG下面能正确进行字符串赋值操作的是( )A.char s[5]={'A','B','C','D','E'};B.char s[5]={"ABCDE"};C.char *s ; s="ABCDE" ;D.char *s; scanf("%s",s) ;设p1和p2是指向同一个字符串的指针变量,c为字符变量,则以下能正确执行并得到有意义的结果的赋值语句是( )。
A.p2=c;B.c=*p1+*p2;C.p1=p2;D.c=*p1*(*p2);已有函数max(a,b),为了让函数指针变量p指向函数max,正确的赋值方法是( )。
A.*p=max(a,b);B.*p=max;C.p=max;D.p=max(a,b);以下正确的叙述是( )。
A.C语言允许main函数带形参,且形参个数和形参名均可由用户指定B.当main函数带有形参时,传给形参的值只能从命令行中得到C.若有说明: int main(int argc,char **argv),则argc的值必须大于1D.C语言允许main函数带形参,形参名只能是argc和argv若有定义:int (*p)[4];则标识符p( )。
A.是一个指针数组名B.定义不合法C.是一个指向整型变量的指针D.是一个指针,它指向一个含有四个整型元素的一维数组设有程序段:char s[ ]="china"; char *p ; p=s ;则下面叙述正确的是()。
第三章1.为表示关系x≥y≥z,应使用的表达式是A.(x>=y)&&(y>=z)B.(x>=y>=z)C.(x>=y)AND(y>=z)D.(x>=y)&(y>=z)2.有以下程序main(){inti;for(i=0;i<3;i++)switch(i){case1:printf("%d",i);case2:printf("%d",i);default:printf("%d",i);}}执行后输出结果是3.对for(表达式1;;表达式3)可理解为()。
(表达式1;1;表达式3)(表达式1;0;表达式3)(表达式1;表达式1;表达式3)(表达式1;表达式3;表达式3)4.若i为整型变量,则以下循环执行次数是()。
for(i=2;i==0;)printf("%d",i--);次次C.无限次次5.有以下程序段intn=0,p;do{scanf("%d",&p);n++;}while(p!=12345&&n<3);此处do-while循环的结束条件是______。
的值等于12345并且n的值大于等于3的值不等于12345并且n的值小于3的值不等于12345或者n的值小于3的值等于12345或者n的值大于等于36.有以下程序段intn=0,p;do{scanf("%d",&p);n++;}while(p!=12345&&n<3);以下描述中正确的是()。
循环中,根据情况可以省略whileB.由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句循环由do开始,用while结束,在while(表达式)后面不能写分号D.在do-while循环体中,一定要有能使while后面表达式的值变为零("假")的操作7.执行语句for(i=1;i++<4;);后变量i的值是()。
第四章单选有以下程序,程序运行后的输出结果是( )#include<stdio.h>int fun (int x,int y){ if (x!=y) return ((x+y)/2);else return (x);}int main(){ int a=4,b=5,c=6;printf("%d\n",fun(2*a,fun(b,c))); return 0;}A.12B.6C。
3 D。
8有以下程序,程序运行的输出结果( ) #include <stdio.h>int f(int x);int main(){int n=1,m;m=f(f(f(n))); printf(“%d\n”,m);return 0 ;}int f(int x){return x*2;}A.8B.4C.1D.2有以下程序,程序执行后变量w中的值是( ) #include<stdio。
h>int funl(double a){return a*=a;}int fun2(double x,double y){double a=0,b=0;a=funl(x);b=funl(y);return (int)(a+b);}int main(){double w;w=fun2(1.1,2.0);……}A。
5。
21 B。
0.0 C。
5。
0 D.5有以下程序,程序运行后的输出结果是()#include<stdio。
h〉int fun(){ static int x=1;x*=2;return x;}int main(){int i,s=1;for(i=1;i〈=3;i++) s*=fun();printf(”%d\n”,s);}A。
10 B。
64 C。
0 D。
30有以下程序,程序运行后的输出结果是( )#include<stdio。
h>int f(int x,int y){return ((y-x)*x);}int main(){int a=3,b=4,c=5,d;d=f(f(a,b),f(a,c));printf(”%d\n",d);}A.10 B。
第四章单选有以下程序,程序运行后的输出结果是( ) <>( y){ () (()/2);(x);}(){ 456;("\n"(2*()));0;}A.12B.6C.3D.8有以下程序,程序运行的输出结果( ) <>f( x);(){ 1;(f(f(n))); (“\n”);0 ;}f( x){ x*2;}A.8B.4C.1D.2有以下程序,程序执行后变量w中的值是( ) <>( a){ a*;}2( y){ 0,0;(x);(y); ()();}(){ 2(1.1,2.0);……}A.5.21B.0.0C.5.0D.5有以下程序,程序运行后的输出结果是()<>(){ 1;x*=2;x;}(){ 1;(1<=3) s*();("\n");}A.10B.64C.0D.30有以下程序,程序运行后的输出结果是()<>f( y){ (()*x);}(){ 345;(f()());("\n");}A.10B.8C.7D.9有以下程序,程序运行后的输出结果是() <>( p){ 2; ; (“”);}(){ 1;(a); (“\n”);0;}A.22B.21C.12D.32有以下程序:程序运行后的输出结果是( )<>f(){ 1;1; x;}(){ 1;(1<=5) ();("\n");0;}A.21B.6C.120D.11若有代数式 (其中e仅代表自然对数的底数,不是变量),则以下能够正确表示该代数式的C语言表达式是()((()()))((()()))((()(x)))(())以下关于语句叙述中正确的是()A.定义类型的函数中可以有带返回值的语句B.没有语句的自定义函数在执行结束时不能返回到调用处C.一个自定义函数中必须有一条语句D.一个自定义函数中可以根据不同情况设置多条语句设有如下函数定义,若执行调用语句:(3);,则函数总共被调用的次数是( )( k){ (k<1) 0;(1) 1;(1)+1;}A.2B.3C.5D.4在一个C语言源程序文件中所定义的全局变量,其作用域为()A.所在函数的全部范围B.所在文件的全部范围C.由具体定义位置和说明来决定范围D.所在程序的全部范围以下叙述正确的是()语言函数可以嵌套调用,例如:((x))语言程序是由过程和函数组成的语言函数不可以单独编译语言中除了函数,其他函数不可以作为单独文件形式存在以下程序的主函数中调用了在其前面定义的函数,则以下选项中错误的函数首部是 ( )<>(){a[15];(a);0;}( *a)( a)( a[])( a[15])以下说法不正确的是()A.系统不允许用户重新定义标准库函数B.标准库函数按分类在不同的头文件中声明C.用户可以重新定义标准库函数D.用户若需要调用标准库函数,调用前必须使用预编译命令将该函数所在文件包括到用户源文件中下列叙述中正确的是()语言规定必须用作为主函数名,程序将从此开始执行,在此结束可作为用户标识符,用以命名任意一个函数作为主函数C.可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行语言程序将从源程序中第一个函数开始执行若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是()A.同名的实参和形参占同一存储单元B.函数的形参和实参分别占用不同的存储单元C.函数的实参和其对应的形参共占同一存储单元D.形参只是形式上的存在,不占用具体存储单元在C语言中,只有在使用时才占用内存单元的变量,其存储类型是()。
第四章单选有以下程序,程序运行后的输出结果是( )#include<stdio.h>int fun (int x,int y){ if (x!=y) return ((x+y)/2);else return (x);}int main(){ int a=4,b=5,c=6;printf("%d\n",fun(2*a,fun(b,c)));return 0;}A.12B.6C.3D.8有以下程序,程序运行的输出结果( ) #include <stdio.h>int f(int x);int main(){ int n=1,m;m=f(f(f(n))); printf(“%d\n”,m);return 0 ;}int f(int x){ return x*2;}A.8B.4C.1D.2有以下程序,程序执行后变量w中的值是( ) #include<stdio.h>int funl(double a){return a*=a;}int fun2(double x,double y){ double a=0,b=0;a=funl(x);b=funl(y);return (int)(a+b);}int main(){double w;w=fun2(1.1,2.0);……}A.5.21B.0.0C.5.0D.5有以下程序,程序运行后的输出结果是()#include<stdio.h>int fun(){ static int x=1;x*=2;return x;}int main(){ int i,s=1;for(i=1;i<=3;i++) s*=fun();printf("%d\n",s);}A.10B.64C.0D.30有以下程序,程序运行后的输出结果是()#include<stdio.h>int f(int x,int y){return ((y-x)*x);}int main(){ int a=3,b=4,c=5,d;d=f(f(a,b),f(a,c));printf("%d\n",d);}A.10B.8C.7D.9有以下程序,程序运行后的输出结果是()#include <stdio.h>void fun(int p){ int d=2; p=d++; printf(“%d”,p); } int main(){ int a=1;fun(a); printf(“%d\n”,a);return 0;}A.22B.21C.12D.32有以下程序:程序运行后的输出结果是( )#include <stdio.h>int f(){ static int x=1;x+=1; return x;}int main(){ int i,s=1;for(i=1;i<=5;i++) s+=fun(); printf("%d\n",s);return 0;}A.21B.6C.120D.11若有代数式||x x e n (其中e 仅代表自然对数的底数,不是变量),则以下能够正确表示该代数式的C 语言表达式是( )A.sqrt(fabs(pow(n,x)+exp(x,e)))B.sqrt(fbs(pow(n,x)+pow(x,e)))C.sqrt(fabs(pow(x,n)+exp(x)))D.sqrt(abs(n x +e x ))以下关于return 语句叙述中正确的是( )A.定义void 类型的函数中可以有带返回值的return 语句B.没有return 语句的自定义函数在执行结束时不能返回到调用处C.一个自定义函数中必须有一条return 语句D.一个自定义函数中可以根据不同情况设置多条return 语句设有如下函数定义,若执行调用语句:n=fun(3);,则函数fun 总共被调用的次数是( )int fun(int k){ if (k<1) return 0;else if(k==1) return 1;else return fun(k-1)+1;}A.2B.3C.5D.4在一个C 语言源程序文件中所定义的全局变量,其作用域为( )A.所在函数的全部范围B.所在文件的全部范围C.由具体定义位置和extern 说明来决定范围D.所在程序的全部范围以下叙述正确的是( )A.C 语言函数可以嵌套调用,例如:fun(fun(x))B.C 语言程序是由过程和函数组成的C.C 语言函数不可以单独编译D.C 语言中除了main 函数,其他函数不可以作为单独文件形式存在以下程序的主函数中调用了在其前面定义的fun 函数,则以下选项中错误的fun 函数首部是 ( )#include<stdio.h>int main(){double a[15],k;k=fun(a);return 0;}A.double fun(double *a)B.double fun(double a)C.double fun(double a[])D.double fun(double a[15])以下说法不正确的是()A.系统不允许用户重新定义标准库函数B.标准库函数按分类在不同的头文件中声明C.用户可以重新定义标准库函数D.用户若需要调用标准库函数,调用前必须使用预编译命令将该函数所在文件包括到用户源文件中下列叙述中正确的是()A.C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束B.main可作为用户标识符,用以命名任意一个函数作为主函数C.可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行D.C语言程序将从源程序中第一个函数开始执行若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是()A.同名的实参和形参占同一存储单元B.函数的形参和实参分别占用不同的存储单元C.函数的实参和其对应的形参共占同一存储单元D.形参只是形式上的存在,不占用具体存储单元在C语言中,只有在使用时才占用内存单元的变量,其存储类型是()。
C语言上机题库百科园第5章!南信大!第五章单选有以下程序,程序运行后的输出结果是( )#include <stdio.h>#include <string.h>int main(){char a[20]=”ABCD\0EFG\0”,b[]=”IJK”;strcat(a,b); printf(“%s\n”,a);return 0;}A.ABCDE\0FG\0IJKB.ABCDIJKC.EFGIJKD.IJK有以下程序,程序运行后的输出结果是 ( )#include<stdio.h>int main(){ char s[]="012xy\08s34f4w2";int i, n=0;for(i=0;s[i]!=0;i++)if(s[i]>='0'&&s[i]<='9') n++;printf("%d\n",n);return 0;}A.7B.0C.8D.3下列选项中,能够满足"若字符串s1等于字符串s2,则执行ST"要求的是 ( )A.if(strcmp(s2,s1)==0)ST;B.if(s1-s2==0)ST;C.if(strcpy(s1,s2)==1)ST;D.if(s1==s2)ST;以下选项中正确的语句组是()A.char s;s={"BOOK!"};B.char s[];s="BOOK!";C.char s[10];s="BOOK!";D.char s[]="BOOK!";以下数组定义中错误的是()A.int x[2][3]={{1,2},{3,4},{5,6}};B.int x[2][3]={1,2,3,4,5,6};C.int x[][3]={0};D.int x[][3]={{1,2,3},{4,5,6}};若有定义语句:int m[]={5,4,3,2,1},i=4;则下面对m数组元素的引用中错误的是()A.m[m[0]]B.m[2*2]C.m[--i]D.m[m[i]]下列选项中,能正确定义数组的语句是()A.int num[];B.int N=2008;int num[N];C.int num[0…2008];D.#define N 2008int num[N];有以下程序,程序运行时若输入:how are you? I am fine<回车>则输出结果是()#include<stdio.h>int main(){ char a[30],b[30];scanf("%s",a);gets(b);printf("%s\n %s\n",a,b);return 0;}A.how are you?I am fineB.how are you? I am fineC.howare you?I am fineD.how are you?下面是有关C语言字符数组的描述,其中错误的是()A.不可以用赋值语句给字符数组名赋字符串B.可以用输入语句把字符串整体输入给字符数组C.字符数组中的内容不一定是字符串D.字符数组只能存放字符串int aa[MAX];printf("输入一个整数");scanf("%d",&limit);sum=fun(limit,aa);for(i=0;i<sum;i++){if(i%10==0&&i!=0) /*每行输出10个数*/printf("\n ");printf("%5d ",aa[i]);}/******************************/ wf=fopen("debug\\2.out","w");sum=fun(15,aa);for(i=0;i<sum;i++)fprintf(wf,"%d\n",aa[i]);fclose(wf);/*****************************/ return 0;}【参考代码】int i,j,k=0;for(i=2;i<=lim;i++){for(j=2;j<i;j++)if(i%j==0) break;if(j>=i)aa[k++]=i;}return k;/*请编写函数fun,函数的功能是:求出二维数组周边元素之和,作为函数值返回。
==================================================题号:13167以下叙述中正确的是()。
A、程序设计的任务就是确定所用算法B、程序设计的任务就是确定所用数据结构C、顺序,转移,选择程序设计的任务就是编写程序代码并上机调试D、以上三种说法都不完整答案:D题号:13162计算机能直接执行的程序是()。
A、可执行程序B、源程序C、汇编程序D、目标程序答案:A题号:13171下列叙述中正确的是()。
A、C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束B、可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C、main可作为用户标识符,用以命名任意一个函数作为主函数D、C语言程序将从源程序中第一个函数开始执行A题号:13165在算法中,对需要执行的每一步操作,必须给出清楚、严格的规定。
这属于算法的()。
A、确定性B、正当性C、可行性D、有穷性答案:A题号:13164以下叙述中正确的是()。
A、用C语言编写的程序只能放在一个程序文件中B、C、D、答案:D题号:13169下列叙述中正确的是()。
A、在C程序中 main( )函数的位置是固定的B、每个C程序文件中都必须要有一个main( )函数C、C程序中所有函数之间都可以相互调用,与函数所处位置无关D、在C程序的函数中不能定义另一个函数答案:D题号:13191设有以下程序段:int m=0,n=0;char c='a';scanf("%d%c%d",&m,&c,&n);printf("%d,%c,%d\n",m,c,n);若从键盘上输入"10A9<CR> "(<CR> 为回车),则输出结果是()。
A、10,a,9B、10,A,0C、10,A,9D、10,a,0答案:C题号:13183若有以下程序段,其输出结果是()。
第三章.为表示关系≥≥,应使用的表达式是.(>)(>).(>>).(>)(>).(>)(>).有以下程序(){ ;(; <; )(){ : ("", );: ("", );: ("", );}}执行后输出结果是.对 (表达式; ;表达式) 可理解为()。
(表达式;表达式)(表达式;表达式)(表达式;表达式;表达式)(表达式;表达式;表达式).若为整型变量,则以下循环执行次数是()。
(;) ("");次次.无限次次.有以下程序段;{("");;}(<);此处循环的结束条件是。
的值等于并且的值大于等于的值不等于并且的值小于的值不等于或者的值小于的值等于或者的值大于等于.有以下程序段;{("");;}(<);以下描述中正确的是()。
循环中,根据情况可以省略.由于循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句循环由开始,用结束,在 (表达式)后面不能写分号.在循环体中,一定要有能使后面表达式的值变为零("假")的操作.执行语句 (<;); 后变量的值是()。
.不定.有以下程序(){, , , ;(>>)("\");(( > ) )("\");("\");}执行后输出结果是.编译时出错(){ ;(){ : ;: ;: ;} ("");}该程序的输出结果是( ).以下程序的功能是:按顺序读入名学生门课程的成绩,计算出每位学生的平均分并输出,程序如下:(){ ;;;(<){(< ){("");;};("\");}}上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。
C语言上机题库百科园第2章!南信大!第二章若有数学式3aebc,则不正确的C语言表达式是()A.3*a*e/b*cB.a/b/c*e*3C.3*a*e/b/cD.a*e/c/b*3设:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b) && (n=c>d)后n的值为()。
A.4B.3C.2D.1下列表达式中,不满足"当x的值为偶数时值为真,为奇数时值为假"的要求的是()A.(x/2*2-x)==0B.!(x%2)C.!(x%2==0)D.x%2==0表达式18/4*sqrt(4.0)/8值的数据类型为()。
A.charB.doubleC.不确定D.float在C语言中,要求运算数必须是整型的运算符是( )A.%B./C.++D.!=若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为()。
A.4C.16D.52C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符( )A.必须为下划线B.必须为字母C.可以是字母、数字和下划线中的任意一种D.必须为字母或下划线若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是( )A.不知道a的值,不能确定B.0C.2D.1判断字符型变量c1是否为数字字符的正确表达式为( )A.(c1>='0')&&(c1<='9')B.(c1>=0)&&(c1<=9)C.('0'>=c1)||('9'<=c1)D.'0'<=c1<='9'下面四个选项中,均是合法的用户标识符的选项是()。
A._123 temp INTB.A p_o doC.b-a goto intD.float lao _A以下关于C语言数据类型使用的叙述中错误的是( )A.若要处理如"人员工资"的相关数据,单精度类型B.若只处理"真"和"假"两种逻辑值,应使用逻辑类型C.若要保存带有多位小数的数据,应使用双精度类型D.若要准确无误差的表示自然数,应使用整数类型假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是()。