杭州师范大学C语言复习题库第18套
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
练习中--§§ 准考证号:12X2C0101CPP §§ 姓名:练习199 §§ 班级:所有专业. 杭州师范大学
计算机技术基础(C程序设计)课程练习平台.
学号:12X2C0101CPP 姓名:练习199 班级:所有专业
注意:回答完所有试题之后,需要点击本页面最后的【交卷完成,退出系统】按钮。
题号一二三四五
题型判断题 单选题 程序填空题 程序阅读题 程序设计题
说明点击题型名称可以跳转到相应题型
一、判断题
第1题:10110B可作为C语言合法整数
参考答案:对
对
错
第2题:在标准C语言中,所有函数在调用之前都要进行声明。
参考答案:对
对
错
第3题:在标准C中,数据在内存中是以二进制形式表示的。
参考答案:对
对
错
第4题:在标准C语言中,所有函数相互独立的
参考答案:错
对
错
第5题:在标准C中,while后表达式只能是逻辑或关系表达式。
参考答案:错
对
错
第6题:在C语言中,以“r”方式不能打开并不存在的文件。
参考答案:对
对
错
第7题:在if——else语句中,else总是与if成对配用。
参考答案:错
对
错
第8题:在C语言中,一个float型所占字节数为4
参考答案:对
对
错
第9题:可以在一个函数中定义另一个函数
参考答案:错
对
错
第10题:不可以用FILE定义指向二进制文件的文件指针
参考答案:错
对
错
二、单选题 选择正确的答案输入
第1题:下列数组定义语句中,正确的是()
参考答案:C
A、int a[][]={1,2,3,4,5,6};
B、char a[2]「3]='a','b';
C、int a[][3]= {1,2,3,4,5,6};
D、int a[][]={{1,2,3},{4,5,6}};
第2题:两个指针变量的值相等时,表明两个指针变量是
参考
答案:B
A、占据同一内存单元
B、指向同一内存单元地址或者都为空
C、 是两个空指针
D、都没有指向
第3题:给出以下定义:
char x[]="abcdefg";
char y[]={'a','b','c','d','e','f','g'};
则正确的叙述为
参考答案:C
A、数组X和数组Y等价
B、数组x和数组Y的长度相同
C、数组X的长度大于数组Y的长度
D、数组X的长度小于数组Y的长度
第4题:各种基本数据类型的存贮空间正确的长度排列为
参考答案:C
A、Char<long<int<float<double
B、Double<float<long<int<char
C、Char<int<long<float<double
D、Float<int<long<char<double
第5题:以下程序的输出结果是
main( )
{
int x=10,y=10,i;
for(i=0;x>8;y=++i)
printf("%d %d ",x--,y);
}
参考答案:D
A、 10 1 9 2
B、 9 8 7 6
C、 10 9 9 0
D、10 10 9 1
第6题:以下对一维整型数组a的正确说明是:
参考答案:D
A、int a(10)
B、int n=10,a[n]
C、int n;scanf("%d,&n);itn a[n];
D、#define SIZE 10; int a[SIZE];
第7题:设整型变量n的值为2,执行语句“n+=n-=n*n;”后,n的值是
参考答案:C
A、0
B、4
C、- 4
D、2
第8题:已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是:if(x>y) z=x;x=y;y=z;
参考答案:B
A、x=10,y=20,z=30;
B、x=20,y=30,z=30
C、x=20,y=30,z=10
D、x=20,y=30,z=20
第9题:设a=1,b=2,c=10,d=5,则表达式:a<b?a:c<d?a:d的结果为(1-12)中
参考答案:D
A、10
B、 5
C、 2
D、 1
第10题:以下斜述不正确的是
参考答案:D
A、一个C源程序可由一个或多个函数组成
B、一个C源程序必须包含一个main函数
C、C程序的基本组成单位是函数
D、在C程序中,注释说明只能位于一条语句的后面
三、程序
填空题
第1题:
输入一个人名,判断该姓名和程序中已有姓名是否相同,并输出结果。
int IsStringEqual(const char chStr1[], const char chStr2[]);
void main()
{
char chTemp[]={"王小丫"}, chName[10];
printf("请输入姓名:");
gets(chName);
if(IsStringEqual(chTemp, chName) ==___)
puts("相同");
else
___;
}
/*相同:返回1,不相同:返回0*/
int IsStringEqual(const char chStr1[], const char chStr2[])
{
int nLength1, nLength2, I;
nLength1 = strlen(chStr1);
nLength2 =___;
if(nLength1 != nLength2)
return ___;
for(I=0; I<nLength1; I++)
{
if(chStr1[I] != chStr2[I])
return ___;
}
retur 1 ;
}
请在左边文本框当中输入正确答案
参考答案:1
请在左边文本框当中输入正确答案
参考答案:puts("不同")
请在左边文本框当中输入正确答案
参考答案:strlen(chStr2)
请在左边文本框当中输入正确答案
参考答案:0
请在左边文本框当中输入正确答案
参考答案:0
第2题:
输入一个字符,判断其是否为数字,如果是,输出"数字";否则,输出"非数字"。
#include "stdio.h"
main()
{
char a;
printf("输入一个字符"); <brscanf("%c", &a) ;
printf("\n");
if(a>='0' && a<='9')
printf("数字");
else
___;
}
请在左边文本框当中输入正确答案
参考答案:printf("非数字")
第3题:
编程计算下列表达式:s=1!+2!+3!+4!+……+10!
#include "stdio.h"
void main()
{
long s,t;
int I;
s =___;
t =___;
for(I=1;I<=10;___)
{
t=t*I;
___;
}
printf("%ld", s);
}
请在左边文本框当中输入正确答案
参考答案:0
请在
左边文本框当中输入正确答案
参考答案:1
请在左边文本框当中输入正确答案
参考答案:I++
请在左边文本框当中输入正确答案
参考答案:s=s+t
四、程序阅读题
第1题:阅读程序,写出运行结果。
#include<stdio.h>
void main()
{
int k=1,s=0;
switch(k) {
case 1: s+=10;
case 2: s+=20; break;
default: s+=3;
}
printf("k=%d,s=%d",k,s);
}
A)、k=1,s=1 B)、k=30,s=30 C)、k=11,s=30 D)、k=1,s=30
参考答案:D
第2题:阅读程序,写出运行结果。
#include <stdio.h>
int f( )
{ static int k;
return ++k;
}
void main( )
{ int k;
for(k=0;k<3;k++) printf("%d#",f( ));
}
A)、1#2#3 B)、1#2#3# C)、12#3# D)、123#
参考答案:B
第3题:阅读程序,写出运行结果。
#include <stdio.h>
void main( )
{ int k,s;
for(k=1,s=0;k<10; k++) {
if(k%2==0) continue;
s+=k;
}
printf("k=%d,s=%d",k,s);
}
A)、k=10,s=10 B)、k=25,s=10 C)、k=10,s=25 D)、k=10,s=15
参考答案:C
第4题:阅读程序,写出运行结果。
#include<stdio.h>
f(int x)
{ if(x<=1) return 1;
else return f(x-1)+f(x-2);
}
void main( )
{ printf("%d",f(4)); }
A)、6 B)、4 C)、3 D)、5
参考答案:D
第5题:阅读程序,写出运行结果。
#include <stdio.h>
#define MM(x,y) (x*y)
void main( )
{
printf("%d",MM(2+3,15));
}
A)、44 B)、47 C)、74 D)、44
参考答案:B
五、程序设计题
在E盘上建以自己【姓名+准考证号】为名的文件夹,并在该文件夹下面根据设计题中小题个数建相应的子文件夹
,子文件夹名为
【设计题*】,并把每小题结果文件保存在相应的子文件夹中。
例如:考生张三的准考证号为0100101,做设计题中的第1小题,
文件保存位置是:E:\张三0100101\设计题1
第1题:计算并输出方程 X*X+Y*Y+Z*Z=2008 的所有的满足条件正整数解。
参考答案:
#include < stdio.h >
void main()
{ int i1,i2,i3;
for(i1=1;i1<=50;i1++)
for( i2=1;i2<=50;i2++)
for(i3=1;i3<=50;i3++)
if(i1*i1+i2*i2+i3*i3==2008)
printf("%d,%d,%d\n",i1,i2,i3);
}
第2题:将矩阵 9 7 5 倒置为 9 3 4
3 1 2 7 1 6
4 6 8 5 2 8
参考答案:
#include<stdio.h>
main()
{int j,k;
int a[][3]={9,7,5,3,1,2,4,6,8},b[3][3];
for(j=0;j<3;j++)
{for(k=0;k<3;k++)
{printf("%4d",a[j][k]);}
printf("\n");
}
for(j=0;j<3;j++)
for(k=0;k<3;k++)
b[j][k]=a[k][j];
for(j=0;j<3;j++)
{for(k=0;k<3;k++)
{printf("%4d",b[j][k]);}
printf("\n");
}
}
第3题:输入一行电文(长度控制在80以内),以’\0’结束,如果是字母的话,按A→E、B→F、a→e、b→f、w→a、W→A的规律转化,其它字符不变。最后输出原文和经转化后的电文。
参考答案:
#include<stdio.h>
main()
{char ch1[80],ch2[80],c;
int i;
i=0;
scanf("%s",ch1);
c=ch1[0];
while(c!='\0')
{
if(c>'a'&&c<'v'||c>'A'&&c<'V')
ch2[i]=c+4;
else if(c>='W'&&c<='Z'||c>='w'&&c<='z')
ch2[i]=c-22;
else
ch2[i]=c;
i=i+1; printf("%c",c);
c=ch1[i];
}
ch2[i]='\0';
printf("\n原电文:");
puts(ch1);
printf("\n现电文:");
puts(ch2);
}
将你的考生文件夹打包上传:
注意:提交文件是以“姓名+准考证号”进行压缩的打包文件(查看文件打包并上传的演示动画)
<==
注意:
未做完所有试题之前请不要点击右边的【
交卷完成,退出系统】按钮。点击【交卷完成,退出系统】按钮提交结果之后将视为结束练习,退出系统!<==注意左边提示
【你的IP:192.168.102.142】
.
Copyright (C) 2006-2009
Designed By RSIDE
.