admin管理员组文章数量:1615216
2024年3月26日发(作者:)
I I
「凯里学院 C 语言程序设计实验报告
I I ----------------------------------------------------
I I
I I
;;
XXXXX
专业
XX
年级
XX
班,学号
XXXXXX
姓名
XX
成绩
I I
i i
合作者实验日期年月日
::指导教师评阅日期年月日
;;
一、实验目的:
— —
实验二数据类型、运算符和表达式
::(
1
)掌握
C
语言数据类型,熟悉如何定义一个整型、字符型、实型变量、以及对它们赋值
::的方法,了解以上类型数据输出时所用的格式转换符。
::(
2
)学会使用
C
的有关算术运算符,以及包含这些运算符的表达式,特别是自加(
::自减(一一)运算符的使用。
;;(
3
)掌握
C
语言的输入和输出函数的使用
::(
4
)进一步熟悉
C
程序的编辑、编译、连接和运行的过程,学会使用
++
)和
stepbystep
功能。
I I
::{
I I *
::(5
)认真阅读教材数据类型,算术运算符和表达式,赋值运算符和表达式部分内容。 [装[二、实验内容:
[订]
(1)
输人并运行下面的程序
:线;
#include<>
; ;
voidmain()
;;
::
charc1,c2;
c1='a';
c2='b';
prin tf("%c%cn",c1,c2);
;;
::}
::(2
)按习题的要求编程序并上机运行
::该题的要求是
:
::要将“
China
”译成密码,密码规律是
:
用原来字母后面的第
4
个字母代替原来的字母。
::例如,字母“
A
”后面第
4
个字母是“
E”
,用“
E
”代替“
A
”。因此,“
China
”应译为“
Glmre"
。
! !请编
一程序,用赋初值的方法使。
cl
,
c2
,
c3
,
c4
,
c5
五个变量的值分别为‘
C
' ‘
h'
、‘
i
' ;;‘
n
' ‘
a
'经过
运算,使
cl
,
c2
,
c3
,
c4
,
c5
分别变为‘
G'
、‘
I '
、‘
m
> ‘
r'
、‘
e'
,并输
J
|出。
::三、实验步骤:
i i (1)
输人并运行下面的程序
#in clude<>
:装;
voidmain()
【订
I {
[
线
::
::
::
;;}
charc1,c2;
c1='a';
c2='b';
prin tf("%c%cn",c1,c2);
I I
::①运行此程序。
::程序结果为:
ab
PreSE ansi key to cent inue
::②在此基础上增加一个语句
:
prin tf("%d%dn",c1,c2);
::再运行,并分析结果。
③ 将第
2
行改为
:
intc1
,
c2;
再使之运行,并观察结果。
::
④
再将第
3
行改为
;
cl=a;/*
不用单撇号
*/
c2=b;
::再使之运行,分析其运行结果。
:分析:编译通不过,会显示
a
、
b
未被定义。
:⑤再将第
4
,
5
行改为
:
cl="a";/*
用双撇号
*/
■线,
::c2="b";
;;再使之运行,分析其运行结果。
![分析:编译通不过,有语法上的错误。
::⑥再将第
4
,
5
行改为
:
;;
c1=300;/*
用大于
255
的整数
*/
c2=400;
''再使之运行,分析其运行结果。
;;分析:字符型变量为一个字节,且为无符号型,字符会输出
::字符,而要将其转换为数字,会进行符号位扩展,则会输出
;;(2)
输人并运行教材第
3
章习题给出的程序
::#include<>
mai n()
! ! {
;; charc
仁
'a',c2='b',c3='c',c4='101',c5='116';
prin tf("a%cb%ctc%ctabcn",c1,c2,c3);
;; prin tf("tb%c%cn",c4,c5);
i i }
[装]分析输出结果:
(
短线代表空格数
)
;订;
aa-bb—cc ---- abc
:线「一
A-
N
;;(3)
输人并运行下面的程序
::#in
clude
<>
;;voidmain()
::{
:: in ta,b;
;; un sig nedc,d;
;; lon ge,f;
:: a=100;
b=-100;
;;
e=50000;
I I
I
装
I
装
I
I I
1
订
1
f=32767;
c=a;
ASCII
表中
44
和
144
所对应的
44
和
-112
。
d=b;
prin tf("%d,%dn",a,b);
prin tf("%u,%un",a,b);
prin tf("%u,%un",c,d);
c=a=e;
d=b=f;
prin tf("%d,%dn",a,b);
prin tf("%u,%un",c,d);
}
请对照程序和运行结果分析
:
① 将一个负整数斌给一个无符号的变
t
,会得到什么结果。画出它们在内存中的表 示形式。
符号位会变成数位位,数值的绝对值增大。
② 将一个大于
32767
的长整数斌给整型变
t
,会得到什么结果。画出它们在内存中 的表示形式。
::会出现从低位向高位截取
16
位,且第
16
位为符号位。
;;③将一个长整数赋给无符号变量,会得到什么结果
(
分别考虑该长整数的值大于或
;;等于
65535
以及小于
65535
的情况
)
。画出它们在内存中的表示形式。
::会出现从低位向高位截取
16
位,且第
16
位为符号位。大于截取,等于为零,小于不变 读者可以改变程序中各
变的值,以便比较。例如
:
a=65580,b==
;;65535, f=65580
。
;;
⑷
输人习题
::#include<>
: :voidmain()
「{
I I
・丄・・
in ti,j,m, n;
::i=
8
;
「
;;
j=10;
m=++i;
n=j++;
prin tf("%d,%d,%d,%dn",i,j,m, n);
;装丨
}
I I
J
[订]①运行程序,注意
i,j,m,n
各变量的值。分别作以下改动并运行:
:线]②将第
6,7
行改为
:
;;m=i++;
n=++j;
::再运行。
;;③将程序改为
:
#in clude<>
: :voidmain()
::{
I I
I
I
::
I '
I
■丄・・
in ti,j;
i=8;
j=10;
prin tf("%d,%dn",i++,j++);
}
④ 在③的基础上,将
printf
语句改为
: prin tf("%d,%d,%d,%dn",i,j,++i,++j);
⑤ 再将
printf
语句改为
:
prin tf("%d,%d,%d,%dn",i,j,i++,j++);
茸
any key to continue,
I I
::⑥将程序改为
:
::#include<>
::voidmain()
I I
i i
::{
I I
in ti,j,m=0,n=0;
::i=8;
:: j=10;
m+=i++;
n-
=
--j;
:: prin tf("i=%d,j=%d,m=%d ,n=%dn",i,j,m, n);
::}
I I
:[四、实验心得(体会):
:壮丨 通过本次
C
语言上机实验,我对计算机编程语言有了一定的体验。我对
C
语言中各种数
:据类型及表达式的实用有了一定的了解。 特别是关于自增自减运算符的使用加深了印象。
:C
语言的学习,我将更加努力。
线
I I
:装:
:订:
:线:
对
版权声明:本文标题:C语言程序设计实验报告实验数据类型运算符和表达式 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dongtai/1711439914a309836.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论