《C程序设计》样卷1.docx
- 文档编号:1746384
- 上传时间:2023-05-01
- 格式:DOCX
- 页数:9
- 大小:18.17KB
《C程序设计》样卷1.docx
《《C程序设计》样卷1.docx》由会员分享,可在线阅读,更多相关《《C程序设计》样卷1.docx(9页珍藏版)》请在冰点文库上搜索。
《C程序设计》样卷1
《C程序设计》样卷1
一、单项选择题
1.以下叙述中不正确的是________。
A)在函数中,通过return语句传回函数值
B)在函数中,可以有多个return语句
C)在C中,main后的一对圆括号中也可以带有形参
D)在C中,函数的调用必需在一条独立的语句中完成
2.在C语言中,正确的实型常数是________。
A)2eB).09C)3e2.1D)e5
3.若一个外部变量的定义形式为staticintx;其中static的作用是________。
A)将变量存放在静态存储区,使x的值可以永久保留
B)使变量x可以由系统自动初始化
C)使x的值可以永久保留
D)使x只能在本文件内引用
4.以下程序的输出结果是________。
main()
{inta=12,b=12;
printf(“%d%d\n”,--a,++b);}
A)1010B)1212C)1110D)1113
5.若有下列定义:
charc[3],*pc=c;则对c数组元素地址的正确引用是________。
A)&c[3]B)pc+2C)c++D)&c
6.语句if(!
i)i++;中的条件表达式!
i等价于________。
A)i==0B)i!
=1C)i!
=0D)-i
7.C语言中规定,if语句的嵌套结构中,else总是与________配对。
A)与最近的if配套B)与第一个if配套
C)按缩进位置相同的if配套D)与最近的且尚未配对的if配套
8.当执行以下程序段时________。
x=-1;
do{x=x*x;}while(!
x);
A)循环体将执行一次B)循环体将执行两次
C)循环体将执行无限次D)系统将提示有语法错误
9.简单变量做实参时,实参与其对应的形参之间的数据传递方式是________。
A)双向值传递方式B)地址传递方式
C)单向值传递方式D)用户指定传递方式
10.已知:
floatf[]={1.0,2.3,4.5},*pf=f;则以下哪项不能正确引用数组元素________。
A)*pf--B)*(--pf)C)*(pf++)D)*(++pf)
11.设有程序段:
“chars[]="chararray";char*p;p=s;”则下面叙述正确的是。
A)*p与s[0]相等
B)s和p完全相同
C)s数组长度和p所指向的字符串长度相等
D)数组s中的内容和指针变量p中的内容相等
12.以下对二维数组c的声明正确的是_______。
A)intc[3][];B)intc(3,4);C)intc
(2)
(2);D)intc[3][2];
13.定义:
float(*pf)();说明了________。
A)pf是指向一维数组的指针变量
B)pf是指向float型数据的指针变量
C)pf是指向函数的指针,该函数返回一个float型数据
D)pf是一个函数名,该函数的返回值是指向float型数据的指针
14.C语言中共用体类型变量在程序执行期间________。
A)所有成员一直驻留在结构中B)只有一个成员驻留在结构中
C)部分成员驻留在结构中D)没有成员驻留在结构中
15.以下有关宏替换的叙述不正确的是________。
A)宏名必须用大写字母表示B)宏替换不占用运行时间
C)宏名不具有类型D)宏替换只是字符替换
16.若要“为读/写建立一个新的文本文件”,在fopen函数中应使用的文件方式是____________。
A)“w+”B)“rb+”C)“ab+”D)“wb+”
17.两个基类型相同的指针变量之间,不能进行的运算是____________。
A)
18.程序运行输出了错误的结果,可以排除下列哪一个因素____________。
A)算法错误B)运行时输入数据错误
C)未通过编译D)系统资源配置不当
19.下列语句中,哪一个可以按照从z到a的顺序输出26个小写英文字母____________。
A)for(i='z';i>='a';i++)printf(″%d″,i);
B)for(i='z';i>='a';printf(″%c″,i--));
C)for(i='z';i>='a';i++)printf(″%c″,i);
D)for(i='z';i>='a';--i)printf(″%d″,i);
20.设有说明int(*prt)[5];其中标识符ptr是____________。
A)5个指向整型变量的指针
B)指向5个整型变量的函数指针
C)一个指向具有5个整型元素的一维数组的指针
D)具有5个元素的一维指针数组,每个元素都只能指向整型变量
解答:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
二、程序阅读题(共20分每题4分)
1.以下程序的输出结果是___________。
main()
{inti=010,j=10,k=0x10;
printf(“%d,%d,%d\n”,i,j,k);
}
8,10,16
2.写出以下程序的功能。
#include
voidmain()
{inta,b,s;
scanf("%d%d",&a,&b);
s=a-b;
if(a
printf("%d\n",s);
}
输入两个整数,输出两数的差的绝对值
3.以下程序的运行结果是。
#include
voidf(inta[])
{inti=0;
while(a[i]<=10)
{printf("%3d",a[i]);
i++;}
}
109
voidmain()
{inta[]={12,5,10,9,13,4};
f(a+2);
}
4.以下程序的运行结果是。
#include
voidinc()
{staticintx=0;
x+=2;
printf("%d",x);
}
voidmain()
{inc();inc();
}
24
5.写出以下函数的功能。
#include
intf(char*s)
{char*p=s;
while(*p!
='\0')p++;
return(p-s);
}
计算参数串的长度
解答:
1
2
3
4
5
三、程序填空题(共20分每空4分)
1.以下程序用来求数组全部元素的和,请填写缺少的语句。
#include
voidmain()
{inta[]={0,1,2,3,4,5,6,7,8,9};
ints=0,i,*p;
p=
(1);
for(i=0;i<10;i++)
(2);
printf("sum=%d",s);
}
2.以下程序的功能是从键盘上输入若干整数,当输入-1时结束输入,统计并输出-1之前的所有整数的最大值和最小值、统计输出共输入几个整数(-1之前),请填空。
voidmain()
{intx,amax,amin,n=0;
scanf("%d",&x);
if(x!
=-1)
{amax=x;amin=x;}
while((3))
{(4)
if(x>amax)amax=x;
if(x (5);} if(n==0)printf("novalidinput\n"); elseprintf("\nn=%d,amax=%d,amin=%d\n",n,amax,amin); } 解答: 1 2 3 4 5 四、编程题 1.计算个人所得税,月收入的5000元以上部分征20%,800元以上5000元之间部分需缴纳3%的税,800元以下的部分免税。 例如,小张月收入为6000元,则她需缴税(6000-5000)×20%+(5000-800)×3%=326元。 编程,要求输入个人应发工资,计算并输出个人所得税。 解: 2、编写程序,从键盘输入一个字符序列(以字符'#'作为结束标志),将其中的英文小写字母全部转换成相应的英文大写字母,逐个字符写入一个名为test.dat的磁盘文本文件以保存。 然后,从该文件中读取所存入的字符序列,将它们输出在显示屏上。 请填空完善程序。 #include #include main() { FILE*fp; charstr[80]; inti=0; if((fp=fopen("test.dat","w"))==NULL) { printf("Can'topenthisfile! "); exit(0); } printf("Enterastring,'#'toend: \n"); gets(str); while(str[i]! =______) { fputc((str[i]>='a'&&str[i]<='z')? : str[i],_________); ____________________; } fclose(fp); fp=fopen("text.dat","r"); ___(str,strlen(str)+1,fp); printf("%s\n",str);}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C程序设计 程序设计
![提示](https://static.bingdoc.com/images/bang_tan.gif)