C程序设计逻辑结构程序设计实验报告Word文档下载推荐.docx
- 文档编号:21692972
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:14
- 大小:81.03KB
C程序设计逻辑结构程序设计实验报告Word文档下载推荐.docx
《C程序设计逻辑结构程序设计实验报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C程序设计逻辑结构程序设计实验报告Word文档下载推荐.docx(14页珍藏版)》请在冰豆网上搜索。
程序如下:
#include<
stdio.h>
voidmain()
{
intx,y;
printf("
请输入x的值:
"
);
scanf("
%d"
&
x);
if(x<
1)
y=x;
elseif(x>
=1&
&
x<
10)
y=2*x-1;
else
y=3*x-11;
x=%d,y=%d\n"
x,y);
}
输入
输出
分析:
声明变量intx,y;
用scanf函数从屏幕输入x的值
scanf("
当x<
1时,执行
党1<
=x<
10时,执行
y=2*x-1;
党x是其他值时执行
y=3*x-11;
用语句printf("
输出计算后的x,y值。
2、给出一个百分制成绩,要求输出成绩等级A、B、C、D、E。
90分以上为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。
①事先编好程序,要求分别用if语句和switch语句来实现。
运行程序,并检查结果是否正确。
程序为
intscore,temp,logic;
chargrade;
请输入成绩:
score);
//logic=1;
//while(logic)
//{
//printf("
//scanf("
//if(score>
=0&
score<
=100)
//logic=0;
\n"
//}
if(score==100)
temp=9;
temp=(score-score%10)/10;
switch(temp)
{
case9:
grade='
A'
;
break;
case8:
B'
case7:
C'
case6:
D'
case5:
case4:
case3:
case2:
case1:
case0:
E'
}
score=%d,grade=%c\n"
score,grade);
输入:
输出:
②再运行一次程序,输入分数为负值(如一70),这显然是输入时出错,不应给出等级,修改程序,使之能正确处理任何数据,当输入数据大于100和小于0时,通知用户“输人数据错”,程序结束。
为了解决以上问题,程序改为
//printf("
//scanf("
logic=1;
while(logic)
if(score>
logic=0;
运行情况
当输入负数时
这几条语句
=100),
是先把logic的值赋1,用while循环内的语句来判断输入的值,并控制程序执行,只有当输入的数是0到100之间时,才跳出while循环,接着执行下面的语句。
语句temp=(score-score%10)/10;
是将分数减去其余数,得到10的倍数,再除以10,得0-9的整数。
3、给一个不多于5位的正整数,要求:
①求出它是几位数;
②分别输出每一位数字;
③按逆序输出各位数字,例如原数为321,应输出123。
应准备以下测试数据:
·
要处理的数为1位正整数;
要处理的数为2位正整数;
要处理的数为3位正整数;
要处理的数为4位正整数;
要处理的数为5位正整数。
除此之外,程序还应当对不合法的输入做必要的处理,例如:
输入负数;
输人的数超过5位(如123456)。
根据题目要求,程序为
longintnum;
intindiv,ten,hundred,thousand,ten_thousand,place;
%ld"
num);
if(num>
99999)
printf("
输入的整数超过位\n"
else
if(num>
9999)
place=5;
elseif(num>
999)
place=4;
99)
place=3;
9)
place=2;
else
place=1;
place=%d\n"
place);
ten_thousand=num/10000;
thousand=(num-ten_thousand*10000)/1000;
hundred=(num-ten_thousand*10000-thousand*1000)/100;
ten=(num-ten_thousand*10000-thousand*1000-hundred*100)/10;
indiv=num-ten_thousand*10000-thousand*1000-hundred*100-ten*10;
switch(place)
case5:
printf("
%d,%d,%d,%d,%d\n"
ten_thousand,thousand,hundred,ten,indiv);
printf("
indiv,ten,hundred,thousand,ten_thousand);
break;
case4:
%d,%d,%d,%d\n"
thousand,hundred,ten,indiv);
indiv,ten,hundred,thousand);
case3:
%d,%d,%d\n"
hundred,ten,indiv);
indiv,ten,hundred);
case2:
%d,%d\n"
ten,indiv);
indiv,ten);
case1:
%d\n"
indiv);
}
运行情况:
处理的数为1位正整数
处理的数为2位正整数
处理的数为3位正整数
处理的数为4位正整数
处理的数为5位正整数
处理的数超过5位正整数
4、输入4个整数,要求按由小到大顺序输出。
在得到正确结果后。
由题意,得
intt,a,b,c,d;
请输入四个数。
%d,%d,%d,%d"
a,&
b,&
c,&
d);
if(a>
b)
t=a;
a=b;
b=t;
c)
a=c;
c=t;
d)
a=d;
d=t;
if(b>
t=b;
b=c;
b=d;
if(c>
t=c;
c=d;
计算后的结果为:
%d%d%d%d\n"
a,b,c,d);
修改程序使之按由大到小顺序输出。
if(a<
if(b<
if(c<
程序的开始先从屏幕输入四个数:
输入时数与数之间用逗号隔开。
接下来用用依次比较的方法排出其大小顺序。
}
以上语句是将a、c进行比较,并根据条件判断是否交换两数而实现排序。
四、实验总结。
1、逻辑运算--逻辑运算用来判断一件事情是“对”的还是“错”的,或者说...其中“1”表示该逻辑运算的结果是“成立”的,如果一个逻辑运算式的结果为“0”,那么这个逻辑运算式表达的内容“不成立“。
...当该逻辑量的逻辑值为1时,if表达式为真,这时可以执行if后的的程序语句。
...C语言中进行逻辑运算时要注意的问题。
2、三种逻辑运算符
!
(逻辑非)运算规则:
1=0,!
0=1。
优先级:
高。
(逻辑与)运算规则:
1&
1=1,1&
0=0,0&
1=0,0&
0=0。
中
||(逻辑或)运算规则:
0||1=1,1||0=1,0||0=0,1||1=1。
低
其中,'
“!
”双目运算符,其余的都是单目运算符。
3、用逻辑运算符将若干不同类型的表达式连接而成的式子称为逻辑表达式。
与关系表达式类似,逻辑表达式的值也以0和1表示的。
表达式成立结果为1,不成立结果为0。
2010年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 逻辑 结构 实验 报告