完整版C语言程序设计试题与答案4文档格式.docx
- 文档编号:17506931
- 上传时间:2022-12-06
- 格式:DOCX
- 页数:8
- 大小:19.31KB
完整版C语言程序设计试题与答案4文档格式.docx
《完整版C语言程序设计试题与答案4文档格式.docx》由会员分享,可在线阅读,更多相关《完整版C语言程序设计试题与答案4文档格式.docx(8页珍藏版)》请在冰豆网上搜索。
7.设整型变量m,n,a,b,c,d均为1,执行(m=a>
b)&
&
(n=c>
d)后,m,n的值是
A.1,1B.0,1C.1,0D.0,0
8.sizeof(char)的结果值是。
A.4B.2C.1D.出错
9.设a为整型变量,不能正确表达数学关系:
10<
a<
15的C语言表达式是
A.10<
15
B.a==11||a==12||a==13||a==14
C.a>
10&
a<
D.!
(a<
=10)&
!
(a>
=15)
10.要为字符型变量a赋初值,下列语句中哪一个是正确的。
A.chara="
3"
;
B.chara=’3’;
C.chara=%;
D.chara=*;
11.设有定义:
chars[12]="
STRING"
;
则printf("
%d\n"
strlen(s));
的输出是。
A.6B.7C.11D.12
12.合法的数组定义是()。
A.inta[3][]={0,1,2,3,4,5};
B.inta[][]={0,1,2,3,4};
C.inta[2][3]={0,1,2,3,4,5,6};
D.inta[2][3]={0,1,2,3,4,5,};
13.函数在定义时,省略函数类型说明符,则该函数值的类型为。
A.voidB.intC.floatD.double
14.若有定义:
intx,*pb;
以下正确的赋值表达式是。
A.pb=&
xB.pb=x
C.*pb=&
xD.*pb=*x
15.有以下说明和定义语句(int在内存中占4B)UnionStudent
{charname[20];
intage;
floatscor[3];
}st;
则sizeof(st)的值为。
A.4B.12C.20D.36
二、判断题:
(每题1分,共10分)
1.C语言中,源程序的基本单位是子函数。
()
2.C是一个结构化的程序设计语言。
3.运算符“%”要求两个操作数都是整型。
4.变量名是由字母、数字、下划线构成的,长度不限。
5.条件运算符是一个三目运算符。
6.一维数组的下标在任何情况下,都不可以省略。
7.循环结构中,执行continue语句表示结束整个循环。
8.数组的下标必须是整型常量或常量表达式。
9.putchar()函数的作用是输出一个字符串。
10.函数类型省略,系统会默认为void。
三、程序填空:
(每空3分,共18分)
1.求m和n的最小公倍数#include<
stdio.h>
voidmain()
{
intm,n,i;
printf("
请输入两个整数m和n:
\n"
);
scanf("
%d,%d"
&
m,&
n);
for(;
i++)if()
%d和%d的最小公倍数为:
m,n,i);
}
2.求1+1/2+1/3+……+1/100
#include<
voidmain()
inti;
floats;
for()
1+1/2+1/3+……+1/100的值为:
%.2f\n"
s);
四、程序分析题:
(每题6分,共12分)
1.
#include<
math.h>
voidf1(intx,inty,intz)
{floaty1,y2;
y1=(-y+sqrt(z))/(2.0*x);
y2=(-y-sqrt(z))/(2.0*x);
printf("
y1=%.2fy2=%.2f\n"
y1,y2);
voidf2(intx,inty)
{printf("
y1=y2=%.2f\n"
-y/(2.0*x));
voidf3()
no\n"
{inta,b,c,d;
pleaseinput:
a,b,c\n"
%d,%d,%d"
a,&
b,&
c);
d=b*b-4*a*c;
if(d>
0)
f1(a,b,d);
else
if(d==0)f2(a,b);
else
f3();
程序功能:
程序输入:
1,-6,8
程序执行结果:
2.
#include<
#defineM3
#defineN4voidmain()
{inta[M][N],b[N][M],i,j;
请输入矩阵a:
for(i=0;
i<
M;
i++)
for(j=0;
j<
N;
j++)
{scanf("
%d"
a[i][j]);
b[j][i]=a[i][j];
矩阵b:
{for(j=0;
%5d"
b[i][j]);
输入数据:
1579
3682
4718
执行结果:
五、算法设计与程序实现(每题15分,共30分)
注意:
算法要求写在试卷上。
1.设计一个简单的超市收银系统。
(输入商品购买的数量和单价,显示总付款、实付款与找零)
2.求1000以内的完数,并统计个数。
参考答案
1.C2.D3.A4.C5.B
6.A7.D8.C9.A10.B
11.A12.D13.B14.A15.C
1.×
2.√3.√4.×
5.√
6.×
7.×
8.√9.×
10.×
三、程序填空题:
1.i=m;
=m*ni%m==0&
i%n==0break;
2.s=1;
i=2;
=100;
i++s=s+1.0/i;
(每题6分,共12分)1.程序功能:
一元二次方程求解。
y1=4,y2=2
2.程序功能:
矩阵转置。
1
3
4
5
6
7
8
9
2
五、算法设计与程序实现:
(每题15分,共30分)1.
算法:
S1:
输入商品的单价price和购买数量m;
S2:
若price或m为0,则执行s6;
S3:
求价格之和。
sum=sum+price*m;
S4:
求商品数量之和。
count=count+m;
S5:
执行s1;
S6:
输出购买商品的数量count和总额t_price;
S7:
输入实付款money;
S8:
输出找零change=money-t_price算法:
{intm,count=0;
floatprice,t_price=0,money,change;
请输入购买商品的单价和数量:
\n单价数量\n"
do{
scanf("
%f%d"
price,&
m);
if(price==0||m==0)break;
t_price=t_price+m*price;
count=count+m;
}while
(1);
\n\n\n********************\n"
购买商品:
%d个应付款:
count,t_price);
实付款:
"
%f"
money);
change=money-t_price;
找零:
change);
x初始化,x=1;
求x的因子;
S3:
求x的因子之和sum;
S4:
若sum与x相等,则x为完数,并将x输出;
因子个数累加,count++;
x自增,x++;
若x<
=1000,则执行s2;
S8:
输出完数的总个数count;
程序:
intx,i,sum,count=0;
for(x=1;
x<
=1000;
x++)
{sum=0;
for(i=1;
x;
if(x%i==0)sum=sum+i;
if(sum==x)
count++;
%d"
x);
\n\n1000之内的完数共有%d个\n"
count);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 完整版 语言程序设计 试题 答案