欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年C语言习题-答案 .pdf

    • 资源ID:32499207       资源大小:148.88KB        全文页数:14页
    • 资源格式: PDF        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年C语言习题-答案 .pdf

    2011 级 C 语言程序设计作业一姓名:班级:学号:一、选择题1、一个 C 程序的执行是从(A ) 。A)本程序的main 函数开始,到main 函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main 函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main 函数结束2、下面四个选项中,合法的用户标识符是(D )A)P_#$ B)2ha C)goto D)_ab 3、要把整数67523 赋与整型变量I,则应说明I 的类型是(B )A) int B) long C) short D) unsigned 4、已知 int I; float f; 正确的表达式是(D )A) (int f)%I B) int(f)%I C) int (f%I) D) (int)f%I 5、判断 char 型变量 c1 是否为小写字母的正确表达式是(D )A) ? a? =c1=a) & (c1=z) C) 98=c1 D) c1=? a? & c1 x ) & ( b = y z ) ; A)6 B) 0 C) 1 D) 4 7、以下能正确地定义整型变量a,b 和 c 并为其赋初值5 的语句是(C ) 。A)int a=b=c=5; B)int a,b,c=5; C)int a=5,b=5,c=5; D)a=b=c=5; 8、已知 :char a; int b; float c; double d; 执行语句c=a+b+c+d; 后,变量 c 的数据类型是(D )A) int B) char C) float D) double 9、已知字母A 的 ASCII 码为 65,以下程序段的输出结果是(C )char c1=?A?,c2=?Y?;printf( %d,%d ,c1,c2); A)65,90 B)A,Y C)65,89 D)输出格式不合法10、阅读以下程序,当输入数据的形式为:25,13,10, 正确的输出结果为(D ) 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 14 页 - - - - - - - - - ( “CR ”表示回车)main( ) int x,y,z; scanf(“ %d%d%d ” ,&x,&y,&z);printf(“ x+y+z=%dn” ,x+y+z); A、x+y+z=48 B、x+y+z=35 C、x+z=35 D、不确定值11、以下错误的if 语句是(C )A) if(xy); B) if (x=y) x+=y; C) if (x!=y) scanf( “%d” ,&x) else scanf(“%d” ,&y) D) if (xy) x+;y+; 12、阅读以下程序:main( ) int x; scanf(“ %d” ,&x); if (x-5)printf( “ %dn” ,x); else printf( “ %dn” ,x+); 程序运行后,如果从键盘上输入5,则输出结果是(B )A、3 B、4 C、5 D、6 13、若 int I=10;执行下列程序后,变量I 的正确结果是(D )switch(I) case 9 : I+=1; case 10 : I+=1; case 11 : I+=1; default : I+=1; A) 10 B) 11 C) 12 D)13 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 14 页 - - - - - - - - - 2011 级 C 语言程序设计作业二姓名:班级:学号:14、 C 语言中 while 与 do - while 语句的主要区别是(A )A)do -while 的循环体至少无条件执行一次B)do -while 允许从外部转到循环体内C)do -while 的循环体不能是复合语句15、以下的for 循环(B )for ( x = 0 , y = 100 ; (y! = 123 ) & (x 3) ; x + + ) ; A)执行 3 次B)执行 4 次C)循环次数不定D) 是无限循环16、执行 ” for(i=1;i+4; ) ; ” 后,变量i 的值为(C )A)3 B) 4 C) 5 D) 不定17、以下程序段(C )x = -2 ; do x = x * x ; while ( !x ) ; A 是死循环B 循环执行两次C 循环执行一次D 有语法错误18、设 x 和 y 均为 int 型变量,则执行下面循环后,y 的值为(C ) 。for( y=1,x=1;y=50;y+) if(x=10) break; if(x%2=1) x+=5;continue; x-=3; A)2 B) 4 C) 6 D) 8 19、以下程序的输出结果是(C )main() int i,j,x=0; for (i=0;i2;i+) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 14 页 - - - - - - - - - x+; for(j=0;j8;y=+I) printf( “%d,%d”,x-,y); A) 10,1 9,2 B) 9,8 7,6 C) 10,9 9 ,0 D) 10,10 9,1 21、以下正确的描述是(B ) 。在 C 语言程序中:A)函数的定义可以嵌套,但函数的调用不可以嵌套B)函数的定义不可以嵌套,但函数的调用可以嵌套C)函数的定义和函数的调用均不可以嵌套D)函数的定义和函数的调用均可以嵌套22、以下正确的说法是(B ) 。建立函数的目的之一是:A)提高程序的执行效率B)提高程序的可读性C)减少程序的篇幅D)减少程序文件所占内存23、以下正确的说法是(B ) 。A)用户若需调用标准库函数,调用前必须重新定义B)用户可以重新定义标准库函数,若如此,该函数将失去原有含义C)系统根本不允许用户重新定义标准库函数D)用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 14 页 - - - - - - - - - 2011 级 C 语言程序设计作业三姓名:班级:学号:24、下列定义不正确的是( C ) A)#define PI 3.141592 B) #define S 354 C) int max(int x,int y); D) static char c; 25、下列程序运行结果是( A ) #define P 3 #define S(a) P*a*a main() int ar; ar=S(3+5); printf(“ %d ” ,ar); A) 192 B) 29 C) 27 D) 25 26、 C 语言程序中每个语句和数据定义的最后必须有一个(A)A 分号B 逗号C 空格D 冒号27、 C 语言的简单数据类型包括(D )A)整型、实型、逻辑型B)整型、实型、字符型、逻辑型C)整型、字符型、逻辑型D)整型、实型、字符型28、数学关系式xyz 可用 C语言的表达式表示为(A ) A) (x=y)& (y=z) B) (x=y)and(y=z)C) (x=y=z) D) (x=y)&(y0) s =s + 1; if(ab) t= s + t; else if(a=b) t=5; else t=2*s; printf(“%dn” ,t); A)a0 并且 ab B)a0 并且 a0 并且 ab D)a0 并且 ab 30、下面程序的输出结果为( B) main() 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 14 页 - - - - - - - - - int i; for(i=100;i3 ?2:1 32、为了避免嵌套的条件分支语句if-else 的二义性, C 语言规定: C 程序中的else 总是与( C )组成配对关系。A. 缩排位置相同的if B. 在其之前未配对的if C. 在其之前未配对的最近的if D.同一行上的if 33、以下程序的输出结果是( D ) 。int x=10 , y=10;printf (“%dn” ,x, y) ;A. 10 10 B. 9 9 C. 9 10 D. 10 9 34、选出下列标识符中不是合法的标识符的是( D ) 。A. hot_do B. cat1 C. _pri D. 2ab 35、设有如下定义:int x=10 ,y=3,z;则语句 printf (“%dn” ,z=(x%y,x/y) ) ; 的输出结果是( D ) 。A. 1 B. 0 C. 4 D. 3 36、两次运行下面的程序,如果从键盘上分别输入6 和 3,则输出结果是( C ) 。int x ;scanf(“%d ” ,&x ) ;if(x+5 )printf ( “%d ” ,x) ;else printf (“%dn” ,x - -) ;A. 7 和 5 B. 6 和 3 C. 7 和 4 D. 6 和 4 37、执行 int x2,y3;后表达式x( y 3)的值是 (B) A)0 B)1 C)2 D)3 38、在循环结构的循环体中执行break 语句,其作用是(C )A) 结束本次循环,进行下次循环B) 继续执行break 语句之后的循环体中各语句C) 跳出该循环体,提前结束循环D) 终止程序运行39、对 for( 表达式 1 ; ;表达式 3 )可理解为( B ) A) for ( 表达式 1; 0 ;表达式 3 ) B) for ( 表达式 1; 1 ;表达式 3 ) C) for( 表达式 1;表达式 1 ; 表达式 3 ) D) for ( 表达式 1;表达式 3;表达式 3) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 14 页 - - - - - - - - - 2011 级 C 语言程序设计作业四姓名:班级:学号:40、若 i、j 均为整型变量,则以下循环(D )for ( i = 0 , j = -1 ; j = 1 ; i + + , j + + ) printf ( “ %d , %dn “ , i , j ) ;A) 循环体只执行一次B) 循环体一次也不执行C) 判断循环结束的条件不合法D) 是无限循环41、设 j 为 int 型变量,则下面for 循环语句的执行结果是(B )for ( j = 10 ; j 3 ; j - - ) if ( j % 3 ) j - - ; - - j ; - - j ; printf ( “ %d “ , j ) ; A) 6 3 B) 7 4 C) 6 2 D) 7 3 42、 设 int x=1 ,y=1;表达式(!x+ | y )的值是 ( B ) A.0 B. 1 C. 2 D.-1 43、 main( ) int n;( n=6*4 ,n+6) ,n*2 ;printf (“n=%dn” ,n) ; 此程序的输出结果是( B ) A.30 B. 24 C. 60 D. 48 44、设整型变量n 的值为 2,执行语句 “ n+=n -=n*n ;” 后, n 的值是 ( C ) A. 0 B. 4 C. - 4 D. 2 45、 ( C )程序段的功能是将变量u 、s 中的最大值赋给变量t . A. if(us) t=u;t=s;B. t=u;if(t )t=s;C. if (us) t=s;else t=u;D . t=s; if(u )t=u;46、下列程序段的输出结果是( A ) . void main() int k;for (k=1;k=0|b=0 ) & (a0 |b=0 & b=0 )& (a0 & b0) & (a+b0 48、 C 语言中,合法的字符型常数是( A ). A.,A?B.“A”C. 65 D. A 49、若变量c 为 char 类型,能正确判断出c 为小写字母的表达式是( D ). A.,a?=c=,a?) | (c=,z?)C.(,a?=c)D. (c=,a?) & (c=y)& (y=z)B. (x=y ) AND (y=z)C.(x=y=z )D. ( x=z)&(y=z )54、以下可以作为C 语言合法整数的是( C ). A.1010B B. 0368 C.0Xffa D. x2a2 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 14 页 - - - - - - - - - 2011 级 C 语言程序设计作业五姓名:班级:学号:55、在函数中默认存储类型说明符的变量应该是( C )存储类型。A.内部静态B. 外部C.自动D. 寄存器56、执行下面语句后,变量I 的值是(C ) 。for(I=1;I+1;n- -)s=s+1/n;printf (“%6.1fn” ,s) ; 改正: s=s+1.0/n;3. 写出下列程序的运行结果。main() int n ;for(n=3; n=10; n+) if (n%5= =0) break;printf ( “%d ” ,n) ; 输出:34 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 14 页 - - - - - - - - - 4.Fibonacci数列中的头两个数是1 和 1,从第三个数开始,每个数等于前两个数之和。下述程序计算此数列的前20 个数,且每行输出5 个数,请填空。#include void main() int f,f1=1,f2=1; int i; printf(“ %6d,%6d ”,f1,f2); for (i=3;i=20;i+) f=【1】f1+f2; printf(“%6d ”,f); if(【2】i%5=0 ) printf( “n”); f1=f2; 【3】f2=f; 5. 计算 1+1/2+1/4+ , +1/50 的值,并显示出来。 main() int i=2; float sum=1.0; while(i=【4】50) sum+=1/【5】i; i+=2; printf(“sum=%fn”,sum); 6. 以下程序是用来统计正整数的各位数字中零的个数,并求各位数字中最大者。 main() unsigned long num,max,t; int count; count=max=0; scanf(“%ld”,&num); do t=【6】num%10; if(t=0) +count; else if(maxt) 【 7】max=t; num/=10; while(num); printf(“count=%d,max=%ldn ”,count,max); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 14 页 - - - - - - - - - 2011 级 C 语言程序设计作业六姓名:班级:学号:7. 以下程序是用来输入5 个整数,并存放在数组中,找出最大数与最小数所在的下标位置,并把二者对调,然后输出调整后的5 个数。#include main() int a5,t,i,maxi,mini; for(i=0;i5;i+) scanf(“%d ” ,&ai); mini=maxi= 【8】 0;for(i=1;i5;i+) if(【9】aiamaxi) maxi=i; printf(“最小数的位置是:dn ”,mini); printf(“最大数的位置是:dn ”,maxi); t=amaxi; 【 10】amaxi=amini; amini=t; printf(“调整后的数为: ”); for(i=0;i=0 ) if (xamax) amax=x; if( 【2】Xamin ) amin=x; scanf(“ %f” ,&x); printf( “ namax=%fnamin=%fn ” ,amax,amin); 9、下面程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。int n = 0 , c ; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 14 页 - - - - - - - - - c = getchar ( ) ; while ( 【3】 c!=?n?) if ( 【 4】,0?=c & c=? 9? ) n + + ; c = getchar ( ) ; 10、设数组 a 中的元素均为正整数,以下程序是求a 中偶数的个数和偶数的平均值。请填空。main ( ) int a10 = 1,2,3,4,5,6,7,8,9,10 ; int k ,s,i ; float ave ; for ( k = s = i = 0 ; i 10 ;i+ + ) if ( ai % 2 ! = 0 ) 【5】continue ; s + = ai ; k+ + ; if (k!= 0) ave = s / k ; printf (“%d ,%fn”,k ,ave ) ; 11.下列程序的输出结果是16.00,请填空。main() int a=9, b=2; float x= 【6】6.60, y=1.1, z; z=a/2+b*x/y+1/2; printf(%5.2fn, z ); 12. 以下程序显示如下所示的矩阵,矩阵中每个元素形成的规律是:右上三角阵 (含对角线)元素为 1,其它元素值为:行下标列下标1。11 1 1 1 21 1 1 1 32 1 1 1 43 2 1 1 54 3 2 1 main() int i,j,a55; for(i=0;i=4;i+) for(j=0;j5;j+) if(【 7】i=j ) aij=1; else 【8】aij =i-j+1; for(i=0;i5;i+) for(j=0;j5;j+) printf(“%3d ”,aIj); printf(“n ”); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 14 页 - - - - - - - - - 2011 级 C 语言程序设计作业七姓名:班级:学号:13. 若变量 n 中的值为 24,则 printf函数共输出【 9】5 行,最后一行有【10】4 个数。 void print(int n,int aa) int i; for(i=1;i=n;i+) printf(“%6d ”,aai); if(!(i%5) printf(“n ”); 14、从键盘上输入10 个数,求其平均值。main()int i ;float f , sum;for(i=1,sum=0.0;i11;i+ ) scanf( “%f”,&f );sum+=f; printf (“average=%fn” ,sum/10) ;15、 float f=3.1415927 ;printf (“%f ,%5.4f,%3.3f” , f,f,f) ;则程序的输出结果是: 3.141593,3.1416,3.142. 16、 int x=6 , y=7;printf (“%d , ” ,x+) ;printf (“%dn” ,+y) ;程序的输出结果是: 6,8 17、 a=3;a+=( a1)? a:1;printf (“%d ” ,a) ;结果是:4 18、 for ( a=1, b=1;a=20)break;if(b%3=1)b+=3 ;continue; b-=5; 程序的输出结果a 的值为.22 19、以下程序的功能是:从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。请填空。main() float x , amax,amin;scanf(“%f”, &x ) ;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 14 页 - - - - - - - - - amax=x;amin=x;while(x=0.0 )20、 main( ) 21、main( ) float num=5.4321; int a=32;char ch=A; num=(int)(num*100+0.5); printf(“ch=%cn ”,ch+a); num=num/100; printf(“ch=%d ”,ch+1); printf(“num=%fn”,num); 运行结果: num=5.430000 运行结果:22、 #define PI 3 23、main( ) main( ) int a=3,b; int s,r; while(a+=4) for(r=4;r100) break; printf(“a=%d ”,a); else printf(“s=%d ” ,s); 运行结果: s=48 s=75 (注意有空格 ) 运行结果:a=4 24、 main( ) int I; for(I=0 ; I3;I+) switch(I) case 0 : printf( “ 0*” ); case 1: printf( “ 1*n) ; break ; case 2 : printf( “ 2*n); break ; default : printf( “ 3*n ” ); break ; 运行结果:25、以下程序的输出结果是2,1 main() int a=1, b=2; a=a+b; b=a-b; a=a-b; printf(%d,%dn, a, b ); ch=a ch=66 0*1* 1* 2* 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 14 页 - - - - - - - - -

    注意事项

    本文(2022年C语言习题-答案 .pdf)为本站会员(C****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开