C语言实验指导(请对C上机完全不懂的兄弟到这里仔细的来学习)

出处: 作者: 日期:2007年01月23日 13时12分


A x= =0 B x= =1

C x!=1 D x!=0

10. 以下不是无限循环的语句为()。

A for (y=0,x=1;x>=++y;x++);

B for (;;x++);

C while (1) { x++;}

D for (i=10;;i--) sum+=i;

11. 若有以下语句,则下面()是正确的描述。

Char x[]=”12345”;

Char y[]={‘1’,’2’,’3’,’4’,’5’};

A x,y完全相同。

B x,y不相同。

C x数组长度小于y数组长度。

D x,y字符串长度相等。

12. 为了判断两个字符串s1 和s2是否相等,应当使用()。

A if (s1= =s2) B if (s1=s2)

C if (strcpy(s1,s2)) D if (strcmp(s1,s2)= =0)

13. C程序中函数返回值的类型是由()决定。 A return语句中的表达式类型。

B 调用该函数的主调函数类型。

C 调用函数时临时决定。

D 定义函数时所指定的函数类型。

14 若 int t, a=5,b=6,w=1,x=2,y=3,z=4,则经过 t=(a=w>x)&&(b=y>z)计算后变量t ,a, b的值分别为()

A 0,0,0 B 0,0,6

C 1,0,0 D 1,0,6

15 如果变量grade的值为1, 则运行下列程序段后输出结果为()

switch(grade)

{ case 1:printf(“a\n”);

case 2:printf(“b\n”);

case 3:printf(“c\n”);

}

A a B a

b

c

C abc D ab

二.写出下列程序的运行结果(每题3分,共15分)

1. main()

{

int i,j,k;

char space=’ ‘;

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

{

for (j=i;j<=i;j++)

printf(“%c”,space);

for (k=0;k<=5;k++)

printf(“%c”,’*’);

printf(“\n”);

}

}


2.main()

{

int n=0;

while(n++<=2)

printf(“%d\t”,n);

printf(“%d\n”,n);

}


3. main()

{

int a[3][3]={1,2,3,4,5,6,7,8,9};

int i,j,t;

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

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

{t=a[i][j];

a[i][j]=a[j][i];

a[j][i]=t;}

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

{ for(j=0;j<3;j++)

printf(“%4d ”,a[i][j]);

printf(“\n”);

}

}

4. #include “string.h”

main()

{

char string1[20]=”abcd”;

char string2[]=”\\cd\t”;

strcat(string1,string2);

printf(“%d”,strlen(string1));

}


5. main()

{

int count ,sum, x;

count=sum=0;

do { scanf(“%d”,&x);

if (x%2!=0) continue;

count++; sum+=x;

} while (count<5);

printf(“sum=%d”,sum);

}

假设输入的数据为:3 6 -2 9 10 11 8 12

}

三 编程(共70分)

1.编写一个程序,输入一个字符串,按反序存放后再输出该字符串。(10分)

2.写一个程序,能分别统计出从键盘上输入的字符串中小写字符的个数、数字字符的个数和其他字符的个数。输入的字符串以“!”作为结束标记。(10分)

3.编写一个求4个数中的最大数(要求用函数实现求最大数)。(10分)

4.青年歌手参加歌曲大奖赛,有5个评委对她的进行打分,试编程求这位选手的平均得分(去掉一个最高分和一个最低分)。(13分)

5.编程求3~100之间所有的素数及其个数 。(12分)

6.已知在一个ASCII“stud.dat”中,有10个学生的记录,每条记录有4项数据,第1项为学号(int型),第2、3、4项为成绩(float型),编写一个程序从该文件中将这些学生的数据读出来,计算每个人的平均成绩,然后在将原有数据和计算出的平均成绩写到另外一个ASCII“aver.dat”中。(15分)


模拟试题二

一、选择题(每题2分 共26分)

1. 以下几个语句执行后i,j,k的值分别为()

int i,j,k;

i=j=0;

k=1;

if (i>j?(j--):(i--)) k++;

A 1,9,1 B 1,0,2

C -1,0,1 D 0,0,2

2. int i=0,j=0;

int a=2,b=4,c=5,d=6;

表达式(i=a-b)&&(j=c-d)的结果是()

A 1 B 0

C -2 D -1

3.若给定条件表达式(m)?(a++):(a--),则表达式m()

A 等价于(m==0) B 等价于(m==1)

C 等价于(m!=0) D 等价于(m!=1)

4 下列程序运行结束后,n的值为()

n=2;

do { n=n+n;

n--;

} while (n<20);

A 21 B 22

C 33 D 24

5.已知数组a[3][4],若给a[1][2]赋值5 ,下列操作正确的是()

A a=5 B *a[1]=5

C a[2]={0,5,3,4} D *(a[1]+2)=5

6.文件包含的含义是指()

A 定义常量 B 定义变量

C 引入已说明的函数 D 引入标准函数
最后更新时间:2008-11-04 18:30:17
文章评论
共有 0 位网友发表了评论
用户名: 新注册) 密码: 匿名评论 [查看所有评论]

评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。

考试全流程