c语言写a b中0 9出现的次数,C语言模拟试题6

一、单项选择题(本题共10小题,每小题2分,满分20分)

1.下列运算符中,结合方向为“自右至左”的是:[  ]

A. 算术运算符     + - * /     B.左移运算符 <<

C. 赋值运算符=         D. 关系运算符 < <= > >=

2.用以下语句从键盘接收两个整型值并赋值给整型变量a,b:scanf(“%d,%d”,&a,&b),则以下输入正确的是:

A. 5,6(回车)            B.5(空格)6(回车)

C. 5(回车)6     (回车)       D. 5(空格)6(空格)

3. 以下程序的输出结果是:

main( )

{ int a=7,b=5;

printf(“%d\n”,b=b/a);

}

A. 不确定值     B. 5      C. 1      D. 0

4.以下程序的输出结果是:

main()

{  char s1[20]=“China”,s2[20]=“for”,s[10];

if(strcmp(s1,s2))  printf(“%s\n”, strcat(s2,s1));

else printf(“%d\n”,strlen(s1));

}

A. Chinafor        B. 5     C.forChina       D. 3

5.C语言中函数调用的方式有:

A. 函数调用作为语句1种              B. 函数调用作为函数表达式1种

C. 函数调用作为语句或函数表达式2种

D.函数调用作为语句、函数表达式或函数参数3种

6.已知职工记录描述如下,设变量w中的“生日”是“1993年10月25日”,下列对“生日”的正确赋值方式是:

struct worker

{  int no; char name[20]; char sex;

structbirth{ int day; int month; int year;}a;

};

struct worker w;

A. day=25; month=10; year=1993;

B. w.birth.day=25;  w.birth.month=10;w.birth.year=1993;

C. w.day=25; w.month=10; w.year=1993;

D. w.a.day=25; w.a.month=10; w.a.year=1993;

7.若有下面的变量定义,以下语句中合法的是:

int  i,a[10],*p;

A. p=a+2;      B. p=a[5];       C. p=a[2]+2;      D. p=&(i+2);

8.以下程序的输出结果为:

main( )

{  int i=010,j=10,*pi,*pj;

pi=&i; pj=&j;

printf("%d,%d\n",*pi,*pj);

}

A. 10,10      B. 8,10     C.010,10     D. 8,8

9.要打开一个已存在的非空文本文件"file"用于修改,选择正确的语句:

A. fp=fopen("file","r");    B.fp=fopen("file","w");

C. fp=fopen("file","r+");   D. fp=fopen("file","w+");

10.以下的 for 循环 for(x=0,y=0;(y!=123)&&(x<4);x++);中,x++执行的次数:

A. 执行 3 次         B. 执行 4 次

C. 循环次数不定      D. 是无限循环

二、填空题(本题共10小题,每题2分,满分20 分)

1.C语言表达式 5>2>7>8 的值是_______________。

2.当执行完以下语句后,变量a的值为_________,d的值为________,e的值为_________。

a=6; b=++a; c=--a; d=a++; e=a--;

3.设有以下宏定义,则执行赋值语句 a=PP+20;(a为int型变量)后,a的值是________。

#define PR 8

#define PP PR*40

4.定义结构体类型时,应使用关键字________,定义枚举类型时,应使用关键字_________。

5.若有char a[3]=“as”;则*a=________,*(a+2)=____________。

6.已知职工记录描述如下,在Turbo C中(int占两个字节),系统为变量w分配_______字节的空间。

struct worker

{  int no;

char  name[20];

char  sex;

union { int day;  int month;  int year;}birth;

} w;

7.C语言中的文件类型有_____________和__________________两种。

8.以下程序的输出结果为__________________。

main( )

{  char c;

int i;

for(i=65;i<68;i++)

{ c=i+32;

switch(c)

{ case 'a':

case 'b':

case'c':printf("%c,",c);break;

default:printf("end");}

}

}

9.下面程序段的输出结果是(        )。

char a=111; a=a^0; printf(“%d %o\n”,a,a);

10.设 int a=7,b=9,t;执行完表达式t=(a>b)?a:b后,t的值是___________。

三、写出下列程序的运行结果(每题4分,共12分)

1.invert(int*s,int i,int j);

main( )

{  int a[6]={10,6,23,-90,0,3},i;

invert(a,0,5);

for(i=0;i<6;i++)  printf(“%d,”,a[i]);

printf(“\n”);

}

invert(int *s,int i,int j)

{  int t;

if(i

{  invert(s,i+1,j-1);

t=*(s+i);*(s+i)=*(s+j);*(s+j)=t;

}

}

2.#include

#include

f1(int a)

{  int b=0; static int c=3;

b+=1;  c++;

return(a+b+c);

}

main()

{  int a=1,i;

char s1[10]=”java”,s2[10]=”basic”,s[10];

for(i=0;i<3;i++)    printf("%d ",f1(a));

printf(“\n”);

if(strcmp(s1,s2)) { strcpy(s,s1); puts(s);}

printf(“%d,%s\n”,strlen(s2),strcat(s2,s1));

}

3.#include

#define MAX 100

main()

{  intf[MAX],i,j,k=2,m=5;

for(i=0;i<=m;i++)  f[i]=1;

f[k-1]=2;

for(i=k;i<=m;i++)

for(j=i-k;j<=i-1;j++)

f[i]+=f[j];

printf("%d%5d%5d\n",k,m,f[m]);

}

四.阅读下列程序,在______处填入适当内容,使程序完整(每空2分,共28分)。

1.求100~200间的全部素数。

#include

(1)

main()

{  int m,k,i,;

for(m=101;m<=200;m+=2)

{

k=sqrt(m);

for(i=(2);i<=k;i++)     if(m%i==0)(3);

if(i==(4))

printf("%d ",m);

}

}

2.用选择法对数组中的10个字符按由大到小排序。

#include

void sort((1))

{   int i,j,k;

char t;

for (i=0;i

{   (2);

for(j=i+1;j

if ((3))   k=j;

t=a[k];  a[k]=a[i]; a[i]=t;}

}

main( )

{   char s[10];

int i;

for(i=0;i<10;i++)    scanf(“%c”,&s[i]);

(4) ;

printf(“thesorted array:\n”);

for(i=0;i<10;i++)

printf(“%3c”, (5));

printf(“\n”);

}

3.输入3×4数组,用指针方法实现将每行中的最小数与第0列元素互换。

#include

swap(int(1))

main()

{  int a[3][4], i, j,*p=a[0];

for(i=0;i<3;i++)

for(j=0;j<4;j++)   scanf(“%d”,p++);

for(p=&a[0][0];p

swap(p);

(3);

for(i=0;i<3;i++)

{  for(j=0;j<4;j++)  printf(“%3d”,*p++);

printf(“\n”);

}

}

swap(int(1))

{  int min, i, *p2=p1,*p3;

(4) ;

for(i=0;i<4;i++)

{ if(*p2

(5) ;

}

min=*p1;*p1=*p3;*p3=min;

}

五、 编程题 (本题共2小题,每小题10分,共20分)

1. 求1+2!+3!+...+20!的和。

2、用指针作函数参数,编程序求一维数组中的最大和最小的元素值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值