程序设计大赛试题

上传人:工**** 文档编号:457171800 上传时间:2024-01-29 格式:DOC 页数:7 大小:151.50KB
返回 下载 相关 举报
程序设计大赛试题_第1页
第1页 / 共7页
程序设计大赛试题_第2页
第2页 / 共7页
程序设计大赛试题_第3页
第3页 / 共7页
程序设计大赛试题_第4页
第4页 / 共7页
程序设计大赛试题_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《程序设计大赛试题》由会员分享,可在线阅读,更多相关《程序设计大赛试题(7页珍藏版)》请在金锄头文库上搜索。

1、程序设计大赛试题一、 选择题(每小题2 分,共20 分)1. 已有定义: int x = 3 ,y = 4 , z = 5 ;则表达式!(x+y) z+1&y+z2的值是()A)1B)-3C)2D)02. 阅读下面程序,执行后的结果为(int fun ( int x , int n ) static int sum = 0 , i ;for ( i=0 ; i nB)p- n +C) +p- nD) ( *p ) .n+5. 以下程序的运行结果是()point ( char * p ) p+=3;main ( ) char b 4 = a, b, c, d , *p = b ;point (

2、p ) ; A) aprintf ( B)“%cn”, *p ) ;bC)cD)d6. 设有以下定义:int a43= 1, 2,3, 4, 5, 6, 7, 8, 9, 10, 11, 12;int(*prt) 3 = a,*p=a0;则下列能够正确表示数组元素a22的表达式是()A)*( *( p+9)B)*( p+9)C)* ( (*prt+2) 2 )D)(*prt+2) +27. 有以下程序main ( ) inti ;for ( i=0 ; i3 ; i+ )switch ( i ) case 1 : printf( “%dn”, i ) ; case 2 : printf( “%

3、dn”, i ) ;default : printf( “%dn”, i ) ; 执行后的输出结果为()A)120 B)012C) 012020D)0111228.以下程序的运行结果是()main( ) int a = 1 , b ;for ( b = 1 ; b =8 ) break ;if ( a % 2 = = 1) a + = 5 ; continue ; a = 3 ; printf( “%dn ”, b ) ; A) 6B)5C)4D) 39.执行以下程序,若从键盘上输入65 14, 则输出结果为 ()main( ) int m , n ;scanf (“%d%d ”, &m ,&

4、n ) ;while ( m ! = n )while ( m n )while ( m n )m -n -= n ;= m ;printf( “%dn ”, m ) ; A)0B)1C)2D)310. 有以下程序# include “stdio.h”void writestr ( char * fn , char *str ) File *fp;fp=fopen(fn , “w ”) ; fputs ( str , fp ) ; fclose ( fp) ;main( ) writestr ( “t1.dat”, “start”) ;writestr (“t1.dat”, “end”) ;

5、程序运行后,文件中的内容是 A) end B) endrt()C)startD)startend二、改错题( 每修改 1处错误 2分,共 20分)请改正下列程序中的错误,使它能得出正确结果。注意,每个小题不止一处错误,修改时不要改动main函数,不得更改程序的结构。1. 下列程序的功能是 ; 读入一个整数 k( 2k 10000), 打印它的所有质因子 (即所有为素数的因子)。# include # include IsPrime(int n) int i, m; m=1;for(i=2; i n; i+) if (n%i) m=0; break; return (m);main() int

6、j, k;printf( “n Please enter an integer number between 2 and 10000: ”); scanf(“%d”, &k);printf( “%d”, k);for(j=2; j = k; j+)if(!(k%j)&( IsPrime(j)printf( “n%4d”, kj);printf( “n”);2.下列程序中,函数fun 的功能:码值或大或相等的字符依次存放到逐个比较 a、b 两个字符串对应位置中的字符,把 c 数组中,形成一个新的字符串。ASCII# include # include void fun(char *p, char

7、 *q, char *c,) int k=1; while (*p!=*q) if(*p*q) ck= *q;elseck= * p;if(* p) p+;if(* q) q+;k+;main() char a10= “aBCDeFgH ”, b10= “ABcd ”, c50= 0; fun(a,b,c);printf( “The result string c is: ”); puts(c);3.下列程序中,函数 fun 的功能:找出 100 至 n(不大于 1000) 之间三位数字相等的所有整数,把这些整数放在 s 所指数组中,个数作为函数值返回。# include #define N

8、100int fun(int *s, int n) int i,j,k,a,b,c;j=0;for(i=100; i n; i+)k=n;a=k%10; k/=10;b=k%10; k/=10;c= k/10;if(a=b & a=c) sj+=i;return j;main() int aN, n, num=0, i;do printf( “n Please enter n(1000);num=fun(a, n);printf( “n The result: n ”);for(i=0; i num; i+)printf( “%5d ”, ai);printf( “n”);4. 下列程序中,函

9、数fun 的功能:根据形参m 的值 (2 m9), 在 m 行 m 列的二维数组中存放如下所示的数据,由main()函数输出。若输入 4,若输入 2,则输出:则输出:11234246821469122381216# include # include #define M 100int aMM=0; fun(int *a, int m) int i, k;for(j=0; i m; j+) for(k=100; k m; k+)ajk=k*j;main() int i, j, n;printf( “n Please enter n: ”); scanf( “%d”, &n); fun(a, n);for(i=0; i n; i+) for(j=100; j m; j+)printf( “%5d ”, aij);printf( “n”);三、填空题(每空 2 分,共 10 分 )1. 阅读下面程序,则程序的执行结果为_ 【 1】。#include “stdio.h”

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 演讲稿/致辞

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号