ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:31.84KB ,
资源ID:9139996      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9139996.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言期末练习试题1doc.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言期末练习试题1doc.docx

1、C语言期末练习试题1doc一、阅读程序,选择输出结果1.下面程序的运行结果是 o b#includeint main()( char m;m = B, + 32;printf( %cn, m );return 0;)2.下面程序的运行结果是 o 0#includeint main()( int x = 3 , y = 5 ;printf( %dn, x/y );return 0;3.下面程序的运行结果是。x=ly=2 *sum*=310 squared is :100 #includeint main()( int x = 1, y = 2 ;printf( x=%d y=%d *sum*=%

2、dn ,x,y,x + y );printf( 10 squared is : %dn, 10 * 10 );return 0;4.下面程序的运行结果是 o x+y+z=48运行时从键盘输入:25 13 10/o #includeint main()( intx,y,z;scanf( %d%d%d,&x, &y, &z );printf( x+y+z=%dn, x + y + z );return 0;5.下面程序的运行结果是 o 55, , A运行时从键盘输入:55AB/O#include int main()(int k = 0 ; char cl = a, c2 = b;scanf(%d

3、%c%c, &k, &cl, &c2 );printf( %d,%c,%cn, k, cl, c2 );return 0;6.下面程序的运行结果是 o c=-l#includeint main()(int a = l,b = 2,c = 3;if( a b ) c = 1;else iff a = b ) c = 0;else c = -1;printf( ,c=%d ,c);return 0;7.下面程序的运行结果是。8888运行时从键盘输入:88/。#includeint main()(int a;scanf( %d,&a );if( a 90) printf( %d ,a);if( a

4、80) printf( %d ,a);if( a 70) printf( %d ,a);return 0;8. 下面程序的运行结果是。 max is 2#includeint main()(int max( int x, int y );int a = 1, b = 2 , c ;c = max( a , b );printf( max is %dn, c );return 0;int max( int x, int y )int z;z=(xy)?x:y;return z;9.下面程序的运行结果是 o a=l,b=2#includeint main()( void f( int x, int

5、 y );int a = 1, b = 2 ;f( a , b );printf( a=%d,b=%dn, a , b );return 0;void f( int x, int y ) x = 100;y = 200;10.下面程序的运行结果是 o 1 1 1#includeint main()(void increment();increment();increment();increment();return 0;void increment()(int x = 0 ;x += 1;printf( %dt, x );11.下面程序的运行结果是 o 8 4#includevoid f( i

6、nt y, int *x )(y = y + *x;*x = *x + y;int main() int x = 2 , y = 4 ;f(y,&x);printf( %d %dn, x, y );return 0;12下面程序的运行结果是 o 3 14 2#includevoid fun( int *a , int *b ) printf( %d %dn, *a , *b );*a = 2;*b = 4;int main()( int x = 1, y = 3 ;fun( &y, &x );printf( %d %dn ,x,y);return 0; 13.#include int main

7、()int x=l,a=2,b=3;switch(x)(case l:a-;break;case 2:b+;break;case 3:a+;b+;printf (na=%d,b=%dn,a,b);return 0;1)程序运行时,a输出(1) DA. 2 B. 0C. 6D. 12)程序运行时,b输出(2) AA. 3 B. 5C. 0D. 114.#include int main() int x,y,t;x=5,y=3; if(xy) (t=x;x=y;y=t;printf (x=%d,y=%dn,x,y);return 0;3)程序运行时,x输出(3) AA. 3 B. 5C. 6 D.

8、 14)程序运行时,y输出(4) CA. 2 B. 3C. 5 D. 115.#includeint main()( inta34 = (0,1,2,3,4,5,6,7,8,9,10,11;int s3 = 0;int i, j ;二、程序选择填空或程序改错1.将所有的A变成E, a变成e,即变成其后的第4个字母,W变成A, X变成B, Y变成C, Z变成D;非字母字符保持原状不变。#includeint main()( char ch ;printf( please enter:n);ch = getchar();while( ch != n)( if( (ch = a & ch = W &

9、 ch Z & ch z)ch = ch - 26; )printf( ”c” ,ch);ch = getchar();)printf( Hnn);return 0 ; )2.计算100至1000之间有多少个数其各位数字之和是5o#includeint main()( int i, s , k , count = 0 ;for( i = 100 ; i = 1000 ; i+ )s = 0 ;k = i;while(k)(s = s + k % 10 ;k =k/10; )if( s!=5)continue;elsecount+;printf( H%dn, count);return 0 ;)

10、3.计算:s=l+12+123+1234+12345。#includeint main()( int t = 0 , s = 0 , i;fbr( i = 1 ; i = 5 ; i+ ) t = i + t * 10;s = s + t; printf( ”s=%dn” ,s);return 0 ;4.用公式+ +求的近似值,直到发现某一项的绝对值小于10一6为4 3 5 7止(该项不累加)。#include#includeint main()( int f = 1 ;float pi = 0.0 , n = 1 , t = 1 ;while(fabs( t) = le-6) pi = pi

11、 + t;n = n + 2 ;f=-f;t = f/n ;pi = pi * 4 ;printf( ”pi=%8.6fm” ,pi);return 0 ;)5.计算100以内能被3整除,且个位数为4的所有整数。#includeint main() int i, j ;for( i = 0 ; i10; i+ )( j = i*10 + 4;if(j%3 !=0)continue;printf(H%dnn,j); return 0 ;)6.从终端输入字符,直到输入琳,为止,统计输入的字符中每个大写字母的个数,存放 在num数组中,其中num0表示字母A的个数,numl表示字母B的个数,以此类推

12、。#includeint main()( int num26 = 0 , i;char c ;while( c = getchar() != #)if( c = A & c = Z*)numc-A += 1;for( i = 0 ; i 26 ; i+ )if( numi)printf( ”c:%dn”, i + A , numi);return 0 ; 7.根据下面的定义,能打印出字母z的语句是 o Dstruct student( char name 10;int age ;;struct student stu3 = ( li xiang , 17 , zhang san , 18 ,w

13、ang wu , 18 );A. printf( %cn , stu2.name ); B. printf( %cn , stu2.namel);C. printf( %cn , stul.namel); D. printf( %cn , stul.name0);8.有一个一维数组score,内放10个学生成绩,统计不及格的学生人数。#include int main()( int fun( float array10);float score10;int i, count = 0 ;printf( input 10 scores:n);for( i = 0; i 10 ; i+ )scanf

14、( %f, &scorei);count =fun( score);printf( %dn, count);return 0;int fun( float array10)( int i, count = 0 ;for( i = 0; i 10 ; i+ )if( arrayi 60)count+;return count;9.下面程序中,函数fun的功能是:统计person所指结构体数组中所有性别(sex)为M 的记录的个数,存入变量n中,并做为函数值返回。#include#define N 3typedef struct(int num;char nam 10 ;char sex ;SS;

15、int fun( SS person)( int i, n = 0 ;for( i = 0 ; i N ; i+ )if(personi.sex = M)n+ ;return n ; int main()( SS WN = 1 , ”AA”,F , 2 , ”BB”,M , 3, ”CC”,M ;int n ;n = fun( W);printf( ”n=%dn” ,n);return 0 ;)10.下面程序的功能是统计文件letter.txt中小写字母c的个数。#includeint main()( char ch ;long n = 0 ;FILE *fp ;if( ( fp = fope

16、n( letter.txt , r) = NULL)(printf( Cannot open file! n);exit(0);)while(! feof (fp)ch = fgetc (fp);if( ch = c)n+;printf( ”n=%ldn” ,n);fclose( fp);return 0 ;11.有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 程序分析:可填在百位、十位、个位的数字都是1、2、3、4O组成所有的排列后再去掉不 满足条件的排列。【程序】#include void main()( int i,j,k;printf(Hnn);for(i

17、=l;i5;i+) /*以下为三重循环*/ for(j=l; (1) ;j+)/Bfor (k= 1 ;k5; (2) )/A if(i!=k& (3) &i!=k)/*C 确保 i、j、k 三位互不相同*/ printf(“d (4) %dn,i,i,k); /B【供选择的答案】(DA. j=lB. j5C. j4 D. j=0(2) A. k+B. kC. k=0 D. k-(3) A. i=jB. elseC. i!=j D. i=k(4) A. %cB. %dC. %s D. %o12.猴子第一天摘下许多个桃子,当即吃了一半,还不过瘾,又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又

18、多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。 到第10天早上想再吃时,只剩下一个桃子了。求第一天共摘了多少。#include int main() ( int day,xl,x2;day=9;x2=;/Al while(day0)(6) ;/* A. xl=(x2+l)*2第1天的桃子数是第2天桃子数加1后的2倍*/ x2=xl;(7) ; /B. day-printf(the total is %dnn, (8) ); / B. x2 return 0;/【供选择的答案】(5)A. 1 B.O C.2 D.9(6)A. xl=(x2+l)*2; B. x2=(xl+l)*2; C.

19、 xl=x2*2; D. x2=xl*2;(7)A.day+1 B. day C. day+ D. day-1(8)A. xl B. x2 C. day D. x2+xl13 .功能:计算100至1000之间有多少个数其各位数字之和是5 【程序】#include int main()(int i, s , k , count = 0 ;for( i = 100 ; i = 1000 ; i+ )s = 0 ;(9 ) ;/ A. k = i while(k)(s= (10) ;/D. s + k% 10k = k/10; if( 11 )C. s !=5continue ;elsecount+

20、;printf( %d, ( 12 ) :/A. countreturn 0 ;【供选择的答案】(9)A. k = iB.k=0 C. k= 1D. k =100(10) A. s + k* 10B. s *k% 10Cs夫k*D. s + k% 10(11) A. s=5B. s != 10 C. s != 5D. s=10(12 ) A. countB. k C. s D. i14.程序读入20个整数,统计非负数个数,并计算非负数之和.#includeint main()(int i, s, count ,n=20;int a20;s=count=0;for(i=0; i20;i+ )sc

21、ant (%d,&ai);for(i=0;i20;i+)if(ail):13Yes#include #include int main()(int nJ;printf(Please input n(nl):n);scanf(%d,&n);for(i=2; (5) ;i+)/ D.isqrt(n)printf(,Yesn);elseprintf(Non);return 0;)【供选择的答案】(5)A.i=sqrt(n) B.in C.i=n D.i=sqrt(n) B.isqrt(n) D.i=sqrt(n)三、程序编写1.编写一个程序,输出所有的水仙花数。若一个三位数等于其各位上数字的立方和,

22、 则称这个三位数为水仙花数。例如,153是一个水仙花数,因为153 =+53 +33。#includeint main()intn,i,j,k;printf( Output: n);for(n = 100 ; n 1000 ; n+ )(i = n % 10 ; /* 个位 */j = ( n / 10 ) % 10 ; /* 十位 */k = n / 100 ; /* 百位 */if(n=i*i*i+j*j*j + k*k*k)printf( ”dn” ,n);)return 0;2.编写一个程序,输入两个整数,用辗转相除法计算其最大公约数和最小公倍数。#includeint main ()

23、int i, m, n,t, P, k;printf( Please input:);scant (%d,%d, &m,&n );if( m n )t = n;n = m ;m = t;p = m * n ;while (n != 0 ) /*余数不为0,继续相除,直到余数为0 */(i = m % n ;m = n;n = i ;k = p / m ;printf( %d,%dn, m , k );return 0;3.编写一个程序,计算s=l!+2!+3!+n!o其中n由输入决定。#includeint main()t = l;sum = 0;printf( Please input: n

24、 =);scanf( %d,&n );for( i = 1; i = n ; i+ )(t = t * i;sum = sum +1;)printf( l!+2!+.+%d!= %dn, n , sum );return 0;4.编写一个程序,计算$ = 1 4 + ? !+| + . +上。其中m由输出决定。2 3 4 5 m#includeint main()( int i, m ;double sum = 0 , k = 1;printf( Please input: m=);scanf( ,&m);for( i = 1; i = m ; i+ )( sum = sum + k/ i;k

25、 = -k;)printf( sum=%4.2fn, sum );return 0;)5.超市节日蓝莓优惠促销活动,购买数量W1公斤,50元/公斤;1斤购买数量W2公 斤,45元/公斤;购买数量33公斤,40元/公斤。利用ifelse if语句编写一个程序,输 入龙虾的数量以及顾客的付款数,显示出龙虾的数量、应付款数以及找给顾客的钱数。当输 入数量以及顾客的付款数不合要求时,通知用户Data Error!,结束程序。#includeint main()float zl,je,yfk;printf(请输入重量(公斤):);scanf(%f,&zl);printf(n);if(zl=l)je=zl

26、*50;else if(zl=2)je=zl*45;elseje=zl*40;printf(”您购买蓝莓重量:%.lf公斤n,zl);printfC您应付金额为:%.lf元n”,je);printf(n);printff顾客所付金额:);scanf(”f”,&yfk);if (yfkje)(printf(Data Error!n);return 0;printf(应找您:.2f 元n,yfk-je);return 0;6.从键盘上输入10个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成 绩。#includeint main()( int score10 , n = 0 , i;float sum = 0.0 , avg ;printf( pleasr ent

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1