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

    C语言程序设计教程第三章练习题题目(共20页).docx

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

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

    C语言程序设计教程第三章练习题题目(共20页).docx

    精选优质文档-倾情为你奉上单选题1、若定义a=3,b=4,执行printf(“%d, %d”,(a,b),(b,a);的输出结果为()。A.3,4B.4,3C.3,3D.4,42、如果要求在if后的判断条件是a不等于0,则下列选项中能正确表达这一关系的是()。A.a<>0B.!aC.a=0D.a3、为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。A.缩排位置相同的ifB.在其之前未配对的ifC.在其之前尚未配对的最近的ifD.同一行上的if4、有定义int t = 0;则有循环while(t=1),则下列关于while循环语句的描述中正确的是()。A.循环控制表达式的值为0B.循环控制表达式的值为1C.循环控制表达式的值不合法D.以上说法都不对5、若有定义:int x ,i;则下列for循环语句:for(i = 0,x = 0; i<= 9 && x!=876;i+)scanf(“%d”,&x);下列选项中,描述正确的是( )A.最多执行10次B.最多执行9次C.是无限循环D.循环体一次也不执行6、关于下面的for循环语句int i,k;for(i = 0,k = -1;k = 1;i+,k+) printf(“*”);下列选项中,描述正确的是( )A.判断循环结束的条件非法B.是无限循环C.只循环一次D.一次也不循环7、C语言程序的三种基本结构是( )。A.顺序结构,选择结构,循环结构B.递归结构,循环结构,转移结构C.嵌套结构,递归结构,顺序结构D.循环结构,转移结构,顺序结构8、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为( )。A.a<>0B.!aC.a=0D.a9、两次运行下面的程序,如果从键盘上分别输入6和4,那么输出结果是( )。void main()int x;scanf("%d",&x);if (x+ > 5)printf("%d",x);elseprintf("%dn",x-);A.7和5B.6和3C.7和4D.6和410、运行以下程序后,如果从键盘上输入china#,那么输出结果为( )。#include<stdio.h>void main() int v1=0,v2=0; char ch; while (ch=getchar()!='#') switch (ch) case 'a': case 'h': default: v1+; case '0': v2+; printf("%d,%dn",v1,v2);A.2,0B.5,0C.5,5D.2,511、有如下程序:void main()int x=1,a=0,b=0;switch(x)case 0:b+;case 1:a+;case 2:a+;b+;printf("a=%d,b=%dn",a,b);该程序的输出结果是( )。A.a=2,b=1B.a=1,b=1C.a=1,b=0D.a=2,b=212、下面程序的输出是( )。void main()char *a=""int v1=0,v2=0,v3=0,v4=0,k;for (k=0;sk;k+)switch (sk)default:v4+;case '1':v1+;case '3':v3+;case '2':v2+;printf("v1=%d,v2=%d,v3=%d,v4=%dn",v1,v2,v3,v4);A.v1=4,v2=2,v3=1,v4=1B.v1=4,v2=9,v3=3,v4=1C.v1=5,v2=8,v3=6,v4=1D.v1=8,v2=8,v3=8,v4=813、下列程序段的输出结果为( )。int y=1;while(y-);printf("y=%dn",y);A.y=-1B.y=0C.死循环D.y=914、当输入数据:27 63 时,下面程序的运行结果是( )。#include<stdio.h>int gbs(int a, int b)int c;a=a>0?a:-a;b=b>0?b:-b;c=a*b;if (c=0)return 0;while (a!=b)if (a>b)a-=b;elseb-=a;return c/a;int gys(int a, int b)if (a*b=0)return 0;a=a>0?a:-a;b=b>0?b:-b;while (a!=b)if (a>b)a-=b;elseb-=a;return a;void main()int a,b,c,d;scanf("%d%d",&a,&b);c=gbs(a,b);d=gys(a,b);printf("a=%d b=%d gbs=%d gys=%dn",a,b,c,d);A.a=30 b=63 gbs=189 gys=9B.a=27 b=63 gbs=190 gys=10C.a=27 b=63 gbs=189 gys=9D.a=27 b=63 gbs=188 gys=1015、假设有程序段:int k=0; while(k=1) k+; while语句的循环次数是( )。A.无限次B.有语法错,不能执行C.一次也不执行D.执行1次16、执行下面程序片段的结果是( )。int x=23;doprintf("%2d",x-); while (!x);A.打印出321B.打印出23C.不打印任何内容D.陷入死循环17、在C语言程序中,若希望结束循环,则do-while语句构成的循环中的条件为( )。A.0B.1C.trueD.非18、以下描述中正确的是( )。A.do-while语句构成的循环不能用其它语句构成的循环来代替B.do-while语句构成的循环只能用break语句退出C.用do-while语句构成的循环,在while后的表达式为非零时结束循环D.用do-while语句构成的循环,在while后的表达式为零时结束循环19、以下循环体的执行次数是( )。void main()int i,j;for (i=0,j=1; i<=j+1; i+=2,j-)printf("%dn",i);A.3B.2C.1D.020、有如下程序:void main()int i,sum;for(i=1;i<=3;sum+)sum+=i;printf("%dn",sum);该程序的执行结果是( )。A.6B.3C.死循环D.021、以下程序的输出结果是( )。void main()int x=10, y=10, i;for (i=0; x>8; y=+i)printf("%d %d ", x-, y);A.10 1 9 2B.9 8 7 6C.10 9 9 0D.10 10 9 122、下列说法中正确的是( )。A.在switch语句中一定要使用break语句B.在switch语句中不一定要使用break语句C.break语句是switch语句的一部分D.break只能用于switch语句中23、执行下面的程序后,a的值为( )。void main()int a,b;for (a=1,b=1; a<=100; a+)if (b>=20)break;if (b%3=1)b+=3;continue;b-=5;A.7B.8C.9D.1024、若有以下程序段,w和k都是整型变量:w=k;LB:if (w=0)go to LE;w-;printf("*");goto LB;LE:那么不能与上面程序段等价的循环语句是( )。A.for (w=k; w!=0; w-) printf("*");B.for (w=k; w; -w) printf("*");C.w=k; while (w- != 0) printf("*"); w+;D.w=k; do w-; printf("*"); while (w!=0);多选题1、C语言的程序结构语句包括()。A.顺序结构语句B.循环结构语句C.选择结构语句D.逻辑结构语句2下列语句哪些属于循环语句()。A.for语句B.do-while语句C.while语句D.switch语句判断题1、break是跳出当前循环,接着执行循环后面的代码。2、continue只能用于循环语句。3、break语句只能在循环语句中使用。4、在C语言中,跳转语句有break语句、goto语句和continue语句。简答题1、请阅读下面的程序,分析程序是否能编绎通过并正确运行,如果不能,说明原因;如果能,请写出运行结果。void main() int a,b,d=241; a=d/100%9; b=(-1)&&(-1); printf(“%d,%d”,a,b);2、请阅读下面的程序,在空白处填写正确的代码,要求输出m和n的值,且每行从头开始。void main() int m = 10, n = 20;printf( ,m);printf( ,n);3、请阅读下面的程序,分析程序是否能编绎通过并正确运行,如果不能,说明原因;如果能,请写出运行结果。void main int x = 1,y = 1, z = 10; if(z<0)if(y>0) x = 3;else x = 5; printf(“%dt”,x); if(z = y < 0) x = 3; else if(y=0) x = 5; else x = 7; printf(“%dt”,x); printf(“%dt”,z);4、请阅读下面的程序,在空白处填写正确的代码,实现分段函数: x < 0 y = 2x + 3; x = 0 y = 0; x > 0 y = (x+7)/3;输入x,计算y值,输出y。void main()int x, y;scanf(“%d”,&x);if(x < 0) y = 2*x + 3; y = 0;if(x > 0) y = (x + 7) / 3;printf(“%d”,y);5、请阅读下面的程序,分析程序是否能编绎通过并正确运行,如果不能,说明原因;如果能,请写出运行结果。void main() char ch = B; switch(ch) case A:printf(“it is An”); case B:printf(“it is Bn”); case C:printf(“it is Cn”); default: printf(“othern”);6、请阅读下面的程序,在空白处填写正确的代码,实现下列功能:投票表决器: -输入Y,y,打印agree -输入N,n,打印disagree -输入其他, 打印losevoid main() char ch; scanf(“%c”,&ch); case Y: case y: printf(“agree”); ; case N: case n; printf(“disagree”); ; ; printf(“loser”);7、请阅读下面的程序,在空白处填写正确的代码,实现下列功能:查询学生身高的分布状况:H 175-200cm 30%M 160-175cm 40% L 150-160cm 30%void main()char ch;scanf(“%d”,&ch); : printf(“175-200cm身高的学生占30%n”); ; : printf(“160-175cm身高的学生占40%n”); ; : printf(“160-175cm身高的学生占40%n”); ; default: printf(“输入有误,请重新输入!n”);8、请阅读下面的程序,分析程序是否能编绎通过并正确运行,如果不能,说明原因;如果能,请写出运行结果。void main() int num = 0; while(num <= 2) num+; printf(“%dn”,num); 9、请阅读下面的程序,在空白处填写正确的代码,实现下列功能:输出1-100之间的偶数数:void main() int num = 1, sum = 0;while (num <= 100)if ( )sum += num; ;printf("sum = %dn", sum);10、请阅读下面的程序,分析程序是否能编绎通过并正确运行,如果不能,说明原因;如果能,请写出运行结果。void main() int num = 0; do num+; printf(“%dn”,num); while(num <= 2);11、请阅读下面的程序,在空白处填写正确的代码,实现下列功能:输出1-100之间的偶数数:void main()int num = 1, sum = 0;doif ( )sum += num; ;while (num <= 100);printf("sum = %dn", sum);12、请阅读下面的程序,分析程序是否能编绎通过并正确运行,如果不能,说明原因;如果能,请写出运行结果。void main() int i, m = 1;for (i = 3; i >= 1; i-)m = (m + 1) * 2;printf("m = %dn", m);13、请阅读下面的程序,在空白处填写正确的代码,实现下列功能:求出1-100之间的偶数和:void main()int i, sum = 0;for(i = 2; ; i+) ;14、请阅读下面的程序,分析程序是否能编绎通过并正确运行,如果不能,说明原因;如果能,请写出运行结果。void main() int i, j;for (i = 0; i <= 2; i+)for (j = 0; j <= i; j+)printf("(%d,%d)n", i, j);15、请阅读下面的程序,在空白处填写正确的代码,实现下列功能:打印下列图形:*void main() int i, j, k;for (i = 0; ; i+)for (j = 0; j <= 2 - i; j+)printf(" ");for (k = 0; ; k+)printf("*"); ;16、请阅读下面的程序,在空白处填写正确的代码,实现下列功能: X Y Z+ Y Z Z 5 3 2void main() int x, y, z, i, result = 532;for (x = 1; ; x+)for (y = 1; ; y+)for (z = 0; z <= 1; z+)i = + (100 * y + 10 * z + z);if (i = result)printf("x = %d, y = %d, z = %dn", x, y, z);17、请阅读下面的程序,分析程序是否能编绎通过并正确运行,如果不能,说明原因;如果能,请写出运行结果。void main()int a, b;for (a = 1, b = 1; a <= 100; a+)if (b >= 10)break;if (b % 3 = 1)b += 3;continue;printf("a = %dn", a);18、请阅读下面的程序,在空白处填写正确的代码,实现下列功能:用户键盘输入一个数,判断是奇数还是偶数.void main() int num;scanf("%d", &num);if (num % 2 = 0) ;else ;ep1:printf("输入的是一个偶数!n");ep2:printf("输入的是一个奇数!n");19、请阅读下面的程序,分析运行结果。void main()printf("n");printf("n");printf("n");printf("n");printf("n");20、请阅读下面的程序,在空白处填写正确的代码,输出三个整数中最大的整数。#include <stdio.h>void main()int a = 10, b = 40, c = 20, t = a;if (t < b) if ( )t = c;printf("%d %d %d中的最大数是 %dn", a, b, c, t);21、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:从键盘输入一个年份数据,判断此年份是否为闰年。(注:满足下面两个条件中的一个即为闰年:一、400的倍数;二、4的倍数但不是100的倍数)。void main()int x,i;scanf("%d",&x);if (x%400=0)i=1;else if (_)i=1;else_;if (i=1)printf("该年为闰年n");if (i=0)printf("该年为平年n");22、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:输入三个整数,将最大数挑选出来显示。void main()int a, b, c, max;scanf("%d,%d,%d",&a,&b,&c);if (a>b)_elsemax=b;if (max<c)_printf("max=%d", max);23、请阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果,否则请说明编译失败的原因。#include <stdio.h>void main()int x = 1, a = 0, b = 0;switch (x)case 0:b+;case 1:a+;case 2:a+;b+;printf("a=%d,b=%dn", a, b);24、请阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果,否则请说明编译失败的原因。#include <stdio.h>void main()int x = 1, y = 0, a = 0, b = 0;switch (x)case 1:switch (y)case 0:a+;break;case 1:b+;break;case 2:a+;b+;break;printf("a=%d, b=%dn", a, b);25、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:通过输入成绩,为成绩评等级,90100为A,8089为B,7079为C,6069为D,60以下为E。#include <stdio.h>void main()int score;printf("Please input your score:");scanf("%d", &score);switch ( )case 10:case 9:printf("Your level is A.n");break;case 8:printf("Your level is B.n");break;case 7:printf("Your level is C.n");break;case 6:printf("Your level is D.n");break; printf("Your level is E.n");26、请阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果,否则请说明编译失败的原因。#include<stdio.h>void main()int y=10;while(y-);printf("y=%dn",y);27、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:计算并输出下列级数的前N项之和SN,直到SN大于Q为止。#include<stdio.h>double fun(double q)int n;double s;n = 2;s = 2.0;while ( )s = s + (double)(n+1)/n; printf("n=%dn",n); void main()printf("%fn", fun(50);28、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:从键盘上输入一行字符(不多于40个,以回车换行符作为输入结束标记),将其中的大写字母改为小写字母,其它字符不变,然后逆向输出。void main()char a40;int n=0;doscanf("%c", &an);if (_)an+=32;n+; while (_ != 'n');n=n-2;while (n>=0)printf("%c", an-);29、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:连续向数组输入成绩,并显示数组元素的值,当输入负数时停止接收数据。void main()int n;int c100;n=0;doprintf("enter num:n");_printf("%dn",cn);n+; while (_);30、请阅读下面的程序,分析该程序执行后会有什么错误或者效果。#include<stdio.h>#define MAX 255void main()unsigned char AMAX, i;for (i=0; i<=MAX; i+)Ai=i;31、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:求1-10的奇数和。void main()int x,s=0;s=0;for (x=1; x<=10; _)_printf("奇数和为:%d", s);32、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:计算n!的值。void main()int i, s, n;printf("enter n:");scanf("%d",&n);_for (i=1; i<=n; i+)_printf("s=%d",s);33、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:求s=3+5+7+29之和。void main()int i,sum=0;for (i=3; i<=29; _)sum = _;printf("sum=%dn",sum);34、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:输出100以内能被3整除且个位数为6的所有整数。#include<stdio.h>void main()int i, j;for (i=0; _; i+)j=i*10+6;if (j%3 != 0)_printf("%d",j);35、请编写程序,从键盘输入一个数,实现对奇数和偶数的判断。提示:1)定义一个int类型变量x,从键盘输入数据,调用scanf()函数。2)使用ifelse语句对x进行判断,如果是奇数就输出“x是一个奇数”,否则输出“x是偶数”。36、从键盘输入三个数a,b,c,判断其中的最大值并输出。提示:1)从键盘输入数据,调用scanf()函数2)用if.else if.else语句判断三个数的最大值37、编写程序,实现下列功能:输入一周中的某一天,查询这一天是工作日还是周末休息日。提示:查询某一天是工作日还是休息日,一次执行一条指令,可以用switch语句;38、编写程序,实现下列功能: 做一个值班查询表,周一至周六安排不同的人值夜班,周日不值班。提示:1)周一到周日需要键盘输入,调用scanf()函数2)多种情况的判断,用switch语句39、编写程序,实现一个能运行加减乘除的简单的计算器。键盘输入表达式,根据加减乘除的符号给出相应的结果。提示:1)键盘输入表达式,根据加减乘除的符号给出相应的结果。2)多种判断情况可以用switch语句40、编写程序,求10的阶乘;提示:1) 20的阶乘是1*2*3*102) 判断条件小于等于10,可以用while循环41、编写程序,实现对“1+3+5+7+99”的求和功能。提示:1)使用while循环语句实现自然数199的遍历。2)在遍历过程中,判断当前遍历的数是否为奇数,如果是就累加,否则不加。42、编写程序,键盘输入一个不多于4位数,求出它是几位数;提示:1)定义一个数num,用num/10逐渐削减其倍数,直到为num/10为0;2)可以用while循环43、编写程序,求10的阶乘;提示:1) 20的阶乘是1*2*3*102) 判断条件小于等于10,可以用do-while循环44、编写程序,实现对“1+3+5+7+99”的求和功能。提示:1)使用do-while循环语句实现自然数199的遍历。2)在遍历过程中,判断当前遍历的数是否为奇数,如果是就累加,否则不加。45、编写程序,打印出所有的水仙花数。所谓水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如153是一个水仙花数,因为153 = 13 + 53 + 33。提示:1)先把一个数的每个位上的数字分离出来 2)所有的三位数,可以用循环语句去遍历46、编写程序,打印出九九知法表;提示:每一行的列数都不相同,可以用循环嵌套47、一个数恰好等于它的平方数的右端,这个数称为同构数。如5的平方是25,5是25的同构数;编写程序,找出1-1000之间全部的同构数;提示:1)遍历1-1000之间的数可以用循环2)取出数据的最右端数字48、编写程序,两个乒乓球对进行比赛,甲队为A,B,C三人,乙队为X,Y,Z三人,已知抽签决定比赛名单,有人向队员打听比赛名单,A说他不和X比,C说他不和X,Z比,请编写程序找出三队赛手的名单。提示:两队比赛,可以循环嵌套遍历赛手组合49、编写程序,实现自然数的相加,如果相加这和超过了5000,就不再相加。50、编写程序,用户键盘输入字符,如果是大写英文字母就打印,否则不打印。提示:如果不符合条件可以用continue结束,进行下一次代码判断执行。51、请阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果,否则请说明编译失败的原因。#include <stdio.h>void main()int k = -3;if (k <= 0)printf("#")elseprintf("&&&&")专心-专注-专业

    注意事项

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

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




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

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

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

    收起
    展开