1 / 32
文档名称:

C语言习题2滁州学院 计算机科学与技术专升本.pdf

格式:pdf   大小:2,204KB   页数:32页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

C语言习题2滁州学院 计算机科学与技术专升本.pdf

上传人:1781111**** 2024/5/11 文件大小:2.15 MB

下载得到文件列表

C语言习题2滁州学院 计算机科学与技术专升本.pdf

相关文档

文档介绍

文档介绍:该【C语言习题2滁州学院 计算机科学与技术专升本 】是由【1781111****】上传分享,文档一共【32】页,该文档可以免费在线阅读,需要了解更多关于【C语言习题2滁州学院 计算机科学与技术专升本 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。:..,不合法的是(D)A)_1B))a_bD)a--:doublea=22;inti=0,k=18;则不符合C语言规定的赋值语句是(C)A)a=a++,i++B)i=(a+k)<=(i+k)C)i=a%11D)i=!a3.#include<>main(){chara,b,c,d;scanf("%c%c",&a,&b);;scanf(“%c”,&d);printf("%c%c%c%c",a,b,c,d);}当执行程序时,按下列方式输入数据(从第一列开始,<CR>代表回车,注意:回车是一个字符)12<CR>34<CR>则输出结果是:(B)A、1234B、12C、12D、123344、以下关于C语言数据类型使用的叙述中错误的是:(D)A、若要准确无误的表示自然数,应使用整数类型。B、若要保存带有多位小数的数据,应使用双精度类型。C、若要处理如"人员信息"等含有不同类型的相关数据,应自定义结构体类型。D、若只处理"真"和"假"两种逻辑值,应使用逻辑类型。:..5a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是:(A)A、1B、0C、2D、不知道a的值,不能确定6、以下选项中与if(a==1)a=b;elsea++;语句功能不同的switch语句是:(B)A、switch(a)B、switch(a==1){case1:a=b;break;{case0:a=b;break;default:a++;case1:a++;}}C、switch(a)D、switch(a==1){default:a++;break;{case1:a=b;break;case1:a=b;case0:a++;}}7、有如下嵌套的if语句if(a<b)if(a<c)k=a;elsek=c;elseif(b<c)k=b;elsek=c;以下选项中与上述if语句等价的语句是(C)A、k=(a<b)?a:b;k=(b<c)?b:c;B、k=(a<b)?((b<c)?a:b):((b<c)?b:c);C、k=(a<b)?((a<c)?a:c):((b<c)?b:c);D、k=(a<b)?a:b;k=(a<c)?a;c8有以下程序#include<>main():..for(i=1;i<3;i++){for(j=3;j>0;j--){if(i*j>3)break;m*=i*j;}}printf(m=%d",m)}程序运行后的输出结果是(A)(A)m=6(B)m=2(C)m=4(D)m=59有以下程序#includes<>main(){inta=1,b=2;for(;a<8;a++){b+=a;a+=2;}printf("%d,%d",a,b);}程序运行后的输出结果是(D)(A)9,18(B)8,11(C)7,11(D)10,1410以下选项中,能用作用户标识符的是(C)A)voidB)8_8C)_0_D)unsigned11阅读以下程序#include:..{intcase;floatprintF;2个数:”);scanf(“%d%f”,&case,&printF);printf(“%d%fn”,case,printF);}该程序编译时产生错误,其出错原因是(A)A)定义语句出错,case是关键字,不能用作用户自定义标识符B)定义语句出错,printF不能用作用户自定义标识符C)定义语句无错,scanf不能作为输入函数使用D)定义语句无错,printf不能输出case的值12表达式:(int)((double)9/2)-(9)%2的值是(B)A)0B)3C)4D)513若有定义语句:intx=10;,则表达式x-=x+x的值为(B)A)-20B)-10C)0D)1014有以下程序#include””main(){inta=1,b=0;printf(“%d,”,b=a+b);printf(“%dn”,a=2*b);:..(D)A)0,0B)1,0C)3,2D)1,215设有定义:inta=1,b=2,c=3;,以下语句中执行效果与其它三个不同的是(C)A)if(a>b)c=a,a=b,b=c;B)if(a>b){c=a,a=b,b=c;}C)if(a>b)c=a;a=b;b=c;D)if(a>b){c=a;a=b;b=c;}16有以下程序#includemain(){intc=0,k;for(k=1;k<3;k++)switch(k){default:c+=k;case2:c++;break;case4:c+=2;break;}printf(“%dn”,c);}程序运行后的输出结果是(A)A)3B)5C)7:..917以下程序段中,与语句:k=a>b?(b>c?1:0):0;功能相同的是(A)A)if((a>b)&&(b>c))k=1;elsek=0;B)if((a>b)||(b>c)k=1;elsek=0;C)if(a<=b)k=0;elseif(b<=c)k=1;D)if(a>b)k=1;elseif(b>c)k=1;elsek=0;18有以下程序(B)#includemain(){for(i=0;s[i]!=??;i++)if(s[i]>=?a?&&s[i]<=?z?)n++;printf(“%dn”,n);}程序运行后的输出结果是(B)A)0B)2C)3D)519有以下程序#include“”main():..while(k++&&n++>2);n”,k,n);}(D)A)02B)13C)57D)1220有以下程序#includemain(){charc1,c2;c1=?A?+?8?-?4?;c2=?A?+?8?-?5?;printf(“%c,%dn”,c1,c2);}已知字母A的ASCII码为65,程序运行后的输出结果是(A)A)E,68B)D,69C)E,DD)输出无定值21有以下程序#includevoidfun(intp){intd=2;p=d++;printf(“%d”,p);}:..{inta=1;n”,a);}(C)A)32B)12C)21D)2222有以下程序#include<>main(){intx=1,y=2,z=3;if(x>y)}程序的运行结果是(D)A)331B)41C)2D)123有以下程序#include<>main(){inti=5;do{if(i%3==1)if(i%5==2){printf(“*%d”,i);break;}:..}while(i!=0);prin”);}(A)A)*7B)*3*5C)*5D)*2*624有以下程序#include<>intfun(inta,intb){if(b==0)returna;elsereturn(fun(--a,--b));}main()程序的运行结果是(B)A)1B)2C)3D)425有以下程序#include<>voidfun(inta,intb){intt;t=a;a=b;b=t;}main(){intc[10]={1,2,3,4,5,6,7,8,9,0},i;for(i=0;i<10;i+=2)fun(c[i],c[i+1]);:..}(A)A)1,2,3,4,5,6,7,8,9,0B)2,1,4,3,6,5,8,7,0,9C)0,9,8,7,6,5,4,3,2,1D)0,1,2,3,4,5,6,7,8,926若有以下程序段,其输出是(B)inta=0,b=0,c=0;c=(a-=a-5),(a=b,b+3);”,a,b,c);,0,-,0,5C.-10,3,-,3,-1027有如下程序main0{inty=3,x=3,z=1;printf(“%d%d”,(++x,y++),z+2);}运行该程序的输出结果是(D)A)34B)42C)43D)3328若变量已正确说明,要求语句:scanf(“a=%f,b=%f”,&a,&b);、,用表示空格,用<CR>表示回车,则正确的输入形式是(C)A、<CR>B、a==9<CR>C、a=,b=9<CR>D、a=,b=9<CR>29假定x和y为double型,则表达式x=2,y=x+3/2的值是(D)A、、3C、、,b,c,d,m和n均为int型变量,且a=5,b=6,c=7,m=2,n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为(C)A、0B、1C、2D、331下列表达式中和x*=3+5等价的是(C)A、(x*=3)+5B、x=x*3+5C、x=x*(3+5)D、x=x+(3+5)32C程序的基本结构有(C):..AB、顺序、选择和模块C、顺序、选择和循环D、逻辑、物理和程序33下列说法正确的是(D)A、main()中()可以省略;B、注释语句只能放在语句后面;C、C语句以;?结束,也可以?,?结束;D、main()主函数可放在程序中任何位置,但程序总是从其开始执行。34下列关于C语言说法错误的是(C)A、C语言运算较其它语言丰富B、C语言以函数为程序模块单元,实现程序模块化设计C、C语言不能直接访问物理地址,不能实现汇编语言的部分功能D、C语言程序的可移植性好,执行效率高。35若有x=1,y=2,z=3,则表达式(x<y?++x:++y)==z的值是(A)A、0B、1C、2D、336若X&&Y||Z的值为1,则(A)A、若Z为0,则X和Y必为1B、X,Y,Z必定为1C、X,Y,Z可能都为0D、若X为1,则Z必为037若有说明语句:charC=?72?;则变量C(D)=getchar();当输入65时,ch的值为(A).?6?39putchar(98);执行后输出(C)`D.?b?40chara[50];scanf(“%s”,a);printf(“%s”,a);如果输入abcdefg后回车,则(A),无输出:..(B)main(){inta,b,c,x;a=b=c=0;x=35;if(!a)x--;elseif(b);if(c)x=3;elsex=4;A)34B)4C)35D)342下列程序中x的值输入8,那么程序输出结果是(B)#include<>main(){floatx,y;if(x<)y=;elseif((x<)&&(x!=2)):..elseif(x<)y=;elsey=;A)))))main(){intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}A)a=2,b=1B)a=1,b=1C)a=1b=0D)a=2,b=244若有定义floatw;inta,b;那一个正确(C)A)switch(w)caseB)switch(a);:..C)switch(a)D)switch(a+b);46B)main(){inti=0,a=0;while(i<20){for(;;)if(i%10==0)break;elsei--;i+=11;a+=i;}A)21B)32C)33D)1147(1)有以下程序main(){intk=4,n=0;for(;n<k;):..if(n%3!=0)continue;k--;}}(C)A)1,1B)2,2C)3,3D)4,447(2)若执行以下程序时从键盘上输入9,则输出结果是(B)A、11B、10C、9D、8main(){intn;,&n);if(n++<10),n);,n--);}48阅读以下程序:main(){intx;,&x);if(x--<5),x);else,x++);}程序运行后,如果从键盘上输人5,则输出结果是(C)A、3B、4C、5D、649以下叙述正确的是(D)A、do-while语句构成的循环不能用其它语句构成的循环代替。B、do-while语句构成的循环只能用break语句退出。C、用do-while语句构成的循环,在while后的表达式为非零时结束循环。D、用do-while语句构成的循环,在while后的表达式为零时结束循环。50以下程序的输出结果是(D)A、10,19,2B、9,87,6C、10,99,0D、10,109,1main(){intx=10,y=10,i;for(i=0;x>8;y=++i)printf("%d,%d",x--,y);}51以下程序的输出结果是(A)A、20B、31C、321D、210main():..,--n);}52以下程序的输出结果是(A)A、#*#*#B、#####C、*****D、*#*#*main(){inti;for(i=1;i<6;i++){if(i%2);continue;};};}53以下程序的输出结果是(B)A、编译不通过,无输出B、acegC、acegiD、abcdefghimain(){inti;for(i='A';i<'I';i++,i++),i+32);;}54以下循环体的执行次数是(C)A、3B、2C、1D、0main(){inti,j;for(i=0,j=1;i<=j+1;i+=2,j--),i);}55有如下程序main(){inti,sum;for(i=1;i<=3;sum++)sum+=i;,sum);}该程序的执行结果是(C)A、6B、3C、死循环D、056有如下程序main(){intx=23;do,x--);}while(!x);}该程序的执行结果是(B)A、321B、23C、不输出任何内容D、陷入死循环:..main(){intn=9;while(n>6){n--;,n);}}该程序段的输出结果是(B)A、987B、876C、8765D、987658有以下程序段intk=0;while(k=1)k++;while循环执行的次数是(A)A、无限次B、有语法错,不能执行C、一次也不执行D、执行1次59以下程序执行后sum的值是(C)A、15B、14C、不确定D、0min(){inti,sum;for(i=1;i<6;i++)sum+=i;,sum);}60有以下程序段intx=3;do,x-=2);}while(!(--x));}其输出结果是(C)A、1B、30C、12D、死循环61t为int类型,进人下面的循环之前,t的值为0(B)while(t=l){……}则以下叙述中正确的是A、循环控制表达式的值为0B、循环控制表达式的值为1C、循环控制表达式不合D、以上说法都不对62以下循环中,while循环的次数是(D)main(){inti=0;while(i<10){if(i<1)continue;if(i==5)break;i++;}……}A、1B、10C、6D、死循环,不能确定次数63以下程序的输出结果是(A):..{inta=0j;for(j=0;j<4;j++){switch(j){case0:case3:a+=2;case1:case2:a+=3;default:a+=5;}},a);}A、36B、13C、10D、2064下列程序的输出结果是(C)A、非法B、a[4]的地址C、5D、3main(){chara[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;,*--p);}65有如下程序段inta=14,b=15,x;charc='A';x=(a&&b)&&(c<'B');执行该程序段后,x的值为(D)A、tureB、falseC、0D、166下列描述中不正确的是(C)A、字符型数组中可以存放字符串B、可以对字符型数组进行整体输入、输出C、可以对整型数组进行整体输入、输出D、不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值67执行下面的程序段后,变量k中的值为(A)A、不定值B、33C、30D、10intk=3,s[2];s[0]=k;k=s[1]*10;68设有数组定义:;则数组array所占的空间为(C)A、4个字节B、5个字节C、6个字节D、7个字节69有如下程序main(){intn[5]={0,0,0},i,k=2;for(i=0;i<k;i++)n[i]=n[i]+1;,n[k]);}该程序的输出结果是(D)A、不确定的值B、2C、1D、0:..intt[3][2];能正确表示t数组元素地址的表达式是(D)A、&t[3][2]B、t[3]C、t[1][2]D、t[2]71有如下程序main(){inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;for(i=1;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];,s);}该程序的输出结果是(A)A、18B、19C、20D、2172以下程序的输出结果是(B)A、20B、21C、22D、23main(){inti,k,a[10],p[3];k=5;for(i=0;i<10;i++)a[i]=i;for(i=0;i<3;i++)p[i]=a[i*(i+1)];for(i=0;i<3;i++)k+=p[i]*2;,k);},若输入60<回车>,写出程序运行结果。pass#include<>voidmain(){intx;if(x>=60)else},若输入5<回车>,写出程序运行结果。#include<>intmain(){inti,n;doublefact;fact=1;for(i=1;i<=n;i++)fact*=i;},若输入a<回车>,写出程序运行结果。A:..intmain(){charch;ch=getchar();if(ch>='a'&&ch<='z')ch=ch-?;elseif(ch>='A'&&ch<='A')ch=ch-'A'+'a';putchar(ch);}423<回车>,写出程序运行结果。#include<>intmain(){inti,n;doublex,mypow;mypow=1;for(i=1;i<=n;i++)mypow*=x;}。sum=6#include<>func(inta[][3]){inti,j,sum=0;for(i=0;i<3;i++)for(j=0;j<3;j++)if(i==j)sum=sum+a[i][j];return(sum);}voidmain(){inta[3][3]={1,1,1,2,2,2,3,3,3},sum;sum=func(a);}。11#include<>intfun(char*s){char*p=s;return(p-s);}voidmain():..719340<回车>,写出程序运行结果。4#include<>intmain(){intx,sum;sum=0;while(x>0){if(x%2==0)sum+=x;}},若输入45795<回车>,写出程序运行结果。min=5,index=0#include<>intmain(){inti,index,n;inta[10];for(i=0;i<n;i++)index=0;for(i=1;i<n;i++){if(a[i]<a[index])index=i;}}。012#include<>voidmain(){intnum=0;while(num<=2)num++;}}。123#include<>voidincrement(){staticintx=0;x+=1;}voidmain(){increment();:..increment();increment();}1110<回车>,写出程序运行结果。1010intmain(){intn;voiddectobin(intn);dectobin(n);}voiddectobin(intn){inta[16]={0};inti=0;while(n!=0){a[i]=n%2;i++;n/=2;}i=i-1;while(i>=0)i--;}}。125#include<>intx;voidcude(){x=x*x*x;}voidmain(){x=5;cude();}。9#include<>voidmain(){inta[]={1,3,5,7,9};inty=0,x,*p;p=&a[0];:..for(x=0;x<3;x++)y+=*(p+x);}14z=3#include<>intadd(inta,intb){intc;c=a+b;returnc;}voidprint(intt){voidmain(){intx,y,z;voidprint(intt);x=1;y=2;z=add(x,y);print(z);}。5#include<>structmine{intqa,qb,qc;};voidmain(){structmines[2]={{1,2,3},{4,5,6}};intanswer;answer=s[0].qa*s[1].qb;}。531#include<>voidmain(){inty=5;for(;y>0;y--){if(y%2==0)continue;}},写出程序的功能。求数组里所有的正数的累加和,并计算正数的个数#include<>voidmain(){inta[10]={2,4,0,-5,10,6,-8,9,6,7};:..inti,s=0,count=0;for(i=0;i<10;i++)if(a[i]>0)s+=a[i],count++;elsecontinue;,}18453618#include<>#defineN6voidmain(){inta[N]={4,5,8,3,6,1};intj,t;for(j=0;j<N-1;j++)if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}for(j=0;j<N;j++)},写出此程序的功能。统计字母、数字、空格和其它字符的个数#include<>voidmain(){charch;intc=0,s=0,n=0,other=0;while((ch=getchar())!=''){if((ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z'))c++;elseif(ch=='')s++;elseif(ch>='0'&&ch<='9')n++;elseother++;}},写出此程序的功能。用选择排序法给数组从大到小排序#defineN10#include<>voidmain(){intk,i,p,t,a[N+1];for(i=1;i<=N;i++):..for(k=1;k<N;k++){p=k;for(i=k+1;i<=N;i++)if(a[p]<a[i])p=i;t=a[p];a[p]=a[k];a[k]=t;}for(i=1;i<=N;i++)}2110#include<>longfunc(intm){longs;if(m==1)s=1;elses=m+func(m-1);return(s);}voidmain(){longy;y=func(4);},写出程序运行的结果。2#include<>intf(intx,inty);voidmain(){inta=1,b=2,c;c=f(a,b);}intf(intx,inty){intz;z=(x>y)?x:y;return(z);}。123456#include<>:..{int*p;inta[6]={1,2,3,4,5,6};p=a;for(;p<a+6;p++)}24s2串接到s1串的后面voidfun1(char*s1,char*s2){++s1;for(;*s1=*s2;s1++,s2++);}。a=1;b=2;*p1=1,*p2=2a=1;b=2;*p1=2,*p2=1intmain(void){inta=1,b=2;int*p1=&a,*p2=&b,*pt;pt=p1;p1=p2;p2=pt;n”,a,b,*p1,*p2);return0;}。main(){floatr,v;scanf(“%f”,&r);v=4**r*r*r/3;printf(“v=%”,v);}。#include<>main():..for(i=2;i<=sqrt(n);i++)if(n%i==0){flag=0;break;}if(flag==1)printf(“%dn”,n);elseprintf(“%d不是质数n”,n);}。main(){floataverage(inta[]);inta[10],i;floataver;for(i=0;i<10;i++)scanf(“%d”,&a[i]);aver=average(a)printf(“averageis%”,aver);}floataverage(inta[]){intsum=0,i;floataver;for(i=0;i<10;i++)sum+=a[i];aver=sum/10;:..returnaver;}(){chars[50];inti,j=0;for(i=0;s[i]!=?0?;i++)if((s[i]>=?A?&&s[i]<=?Z?)||(s[i]>=?a?&&s[i]<=?z?))j++;printf(“j=%dn”,j);}[4][3],计算该二维数组中的最大元素的值及其所在位置(行、列),并输出计算结果。(),首先从键