C语言程序设计模拟题(4)

2019-03-03 22:10

{ int x,y; char c;

for (x=0,y=strlen(s)-1; x

A)ihgfedcba B)abcdefghi C)abcdedcba D)ihgfefghi (28)设有如下函数定义,则输出结果为__D____。 char *fun(char *str) { char *p=str; while(*p)

{if(*p>'d')continue; p++; }

return p; }

main() {

printf(\ }

A)welcome B)come! C)w D)程序进入死循环

(29)设 p1 和 p2 是指向同一个 int 型一维数组的指针变量,k 为 int 型变量,则下列不能正确执行的语句是__B____。

A)k=*p1+*p2; B)p2=k; C)p1=p2; D)k=*p1*(*p2); (30)以下程序的输出结果是___C___。 # define f(x) x*x main( )

{ int a=6,b=2,c; c=f(a)/f(b);

printf(\ }

A)9 B)6 C)36 D)18 (31)若有以下定义:

char s[20]=\

则不能代表字符 o 的表达式是__A____。

A)ps+2 B)s[2] C)ps[2] D)ps+=2,*ps (32)以下程序的输出结果是__A____。 main( ) { int i;

for(i=1;i<6;i++)

{ if(i%2){printf(\ printf(\ }

printf(\ }

A)# * # * # B)# # # # # C)* * * * * D)* # * # * (33)有如下程序 main( ) {

int n = 9; while(n>6) {

n--;

printf(\ } }

该程序的输出结果是__B____。

A)987 B)876 C)8765 D)9876

(34)下列程序是将一个十进制正整数转化为一个八进制数,在程序的空白处应填入的语句是______。 #include main() {

int i=9,a,b[10]={0}; scanf(\ sub(a,b);

for(;i>=0;i--)printf(\ }

sub (int c,int d[]) { int e,i=0;

while(c!=0) {e=c%8; d[i]=e; __C_____; i++; }

return; }

A)c=e/8 B)c=c%8 C)c=c/8 D)c=e%8 (35)执行下面的程序段 int x=35; char z='A'; int B;

B=((x&15)&&(z<'a') ); 后,B 的值为__B____。

A)0 B)1 C)2 D)3

(36)若有以下定义: int t[3][2]; 能正确表示 t 数组元素地址的表达式是__C____。 A)&t[3][2] B)t[3] C)t[1] D)*t[2] 二、填空题

(1)若由以下定义,则不移动指针p,且通过指针p引用值为 98 的数组元素的表达式是 【_*(p+5)__或 p[5]___】 。

int w[10] = {23,54,10,33,47,98,72,80,61},*p = w; (2)以下程序的输出结果是 【_____7_______】 。 #define MAX(x,y) (x)>(y)?(x):(y) main( ) {

int a = 5, b = 2,c = 3, d = 3, t; t = MAX(a + b, c + d)*10; printf(\ }

(3)以下程序的输出结果是 【______0___】 。 main() {

unsigned short a=65536; int b;

printf(\ }

(4)若已经定义int a=25,b=14,c=19;,以下三目运算符(?:)所构成的语句的执行结果是 【_a=26,b=14,c=19__】 。

a++<=2&&b--<=2&&c++? printf(\

a=%d,b=%d,c=%d\\n\

(5)下面的 if 语句与 y=(x>=10)?3*x-11:(x<1)?x:2*x-1;的功能相同,请补充完整。 if( __x<10__ )

if( __x>=1__)y=2*x-1; else y=x; else y=3*x-11;

(6)函数 void fun(float *sn,int n)的功能是:根据以下公式计算 S,计算结果通过形参指针sn 传回;n 通过形参传入,n 的值大于等于 0。请补全程序。 S=1-1/3+1/5-1/7+...+1/(2n+1) void fun(float *sn,int n) { float s=0.0,w,f=-1.0; int i=0;

for(i=0;i<=n;i++) { f= __-1__ *f; w=f/(2*i+1); s+=w; }

*sn___ =s; }

(7)下面的函数 strcat(str1,str2)实现将字符串 str2 拼接到字符串 str1 后面的功能。请填空使之完整。

char *strcat(char *str1,char *str2) { char *t=str1;

while( __*str1_ ) str1++;

while( *str1++=*str2 ++ ); return(t);}

(8)以下函数 fun 用于求两个整数 a 和 b 的最大公约数。 fun(int a,int b) {int i,j,m,n; if(a>b)

{m=a;a=b; 【__b=m____】 ;} i=a;j=b;

while((n= __j%i_ )!=0) {j=i;i= __n_ ;} return(i);

}


C语言程序设计模拟题(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:题库-医保卷

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: