大一上期C语言实验报告2 数据类型、运算符和表达式
C语言之 2-2 数据类型、运算符和表达式

同样也可以在%和浮点数格式说明符之间一些修饰,用来确 定浮点数据的显示宽度、精度及对齐方式。其一般形式为: %[-][m.n]浮点格式说明符 -:依然表示数据输出时左对齐; m.n:m表示整个数据的输出宽度,n表示小数部分输出的位 数。 【例3.5】 #include "stdio.h" void main() { double pi=3.1415; printf("%f,%6.2f,%.2f,%-6.2f\n",pi,pi,pi,pi); } 程序输出结果为: 3.141500,⊔⊔3.14,3.14,3.14⊔⊔
C语言程序设计
2.3.5 赋值运算
1.简单赋值 简单赋值运算符“=“仅执行赋值操作,表达式的形式为: 操作数1=操作数2 “=“的功能是将右操作数的值赋给由左操作数指定的存储 单元(变量)。左操作数必须是一个可更改内容的左值表达式.赋 值运算符的右操作数类型可以和左操作数不同,执行赋值之前右 操作数被自动转换为左操作数的类型。
例6.y<3?-1.0:1 结果为实型, 即使y>=3,结果也为1.0。
1 a>0 0 a=0 -1 a<0
C语言程序设计
为了便于调试程序,下面讲printf。
C语言程序设计
3.2.2 格式输出函数printf
一般调用形式为: printf(“格式控制字符串”,输出项表列); 其功能是按“格式控制字符串”所指定的格式,在 计算机标准输出设备(通常为显示器)上依次输出由输 出项表列所指定的输出项。 输出项表列用于指定输出内容,它通常由一个或多 个输出项构成,当有多个输出项时,输出项之间应使用 逗号“,”分隔,输出项可以是常量、变量或表达式。 输出项的顺序、个数与类型要与“格式控制字符串”中 的格式说明符的顺序、个数、类型相匹配。 “格式控制字符串”是使用一对双撇号括起来的字 符串,用于指定后面各个输出项的输出格式。它一般包 含两个方面的信息:格式说明(以%开头的若干个字符) 和普通字符。
02数据类型、运算符与表达式报告

02 数据类型、运算符与表达式2.1 C 的数据类型一个程序应包括以下两方面内容:⑴对数据的描述,在程序中要指定数据的类型和数据的组织形式,即数据结构(data structure )。
⑵对操作的描述,即操作步骤,也就是算法(algorithm )。
数据是操作的对象,操作的目的是对数据进行加工处理,以得到期望的结果。
程序 = 数据结构 + 算法算法是解决“做什么”和“怎么做”的问题。
程序中的操作语句,实际上就是算法的体现。
算法处理的对象是数据,而数据是以某种特定的形式存在的。
数据结构指的是数据的组织形式。
C 语言的数据结构是以数据类型形式出现的。
整型指针类型数据类型基本类型字符型浮点型枚举类型构造类型数组类型结构体类型共用体类型空类型单精度型双精度型C 语言中数据有常量与变量之分。
在程序中对用到的所有数据都必须指定其数据类型。
2.2 常量与变量2.2.1 常量和符号常量在程序运行过程中,其值不能被改变的量称为常量。
常量区分为不同的类型,如12, 0, -3为整型常量,4.6, -1.23为实型常量,'a', 'd'(单引号内一个字符)为字符常量。
用来标识变量名、符号常量名、函数名、数组名、类型名、文件名的有效字符序列称为标识符(identifier )。
简单地说,标识符就是一个名字。
C 语言规定标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。
大写字母和小写字母被认为是两个不同的字符(大小写敏感)。
为了程序的可移植性以及阅读程序的方便,建议标识符的长度不要超过8个字符。
在选择标识符时,应注意做到“见名知意”,即选有含意的英文单词(或其缩写)作标识符(匈牙利命名法)。
用一个标识符代表一个常量,如:例2.1 符号常量的使用。
#include "stdio.h"#define PRICE 30main(){int num, total;num = 10;total = num * PRICE;printf("total = %d\n", total);}程序中用#define 命令行定义PRICE 代表常量30,此后凡在本程序源代码中出现的PRICE 都代表30,可以和常量一样进行运算。
实验2-1数据类型、运算符与表达式

实验2-1 数据类型、运算符与表达式1【实验目的】(1)掌握C语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法(2)掌握不同类型数据之间赋值的规律(3)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(- -)运算符的使用(4)进一步熟悉C程序的编辑、编译、连接和运行的过程【实验要求】(1)熟练掌握C程序的调试方法(2)熟练掌握常量和变量的定义及使用(3)熟练掌握算术运算符和逗号运算符的使用方法【实验环境】(1) Microsoft XP操作系统(2) Microsoft VC++ 6.0【实验内容】1、程序改错题目描述:阅读下面程序段,编译调试程序,并改正错误语句。
#include <stdio.h>#define PI 3.14159;int main(){float r;PI=3.14159;scanf("%.2f",r);float area;area=PI*r*r;printf("%.2f",area);return 0;}输入:输入半径输出:修改程序段,输出园的面积样例输入:1样例输出:3.142、常量变量练习/sdutoj/problem.php?action=showproblem&problemid=1111题目描述:用c语言的基本输出格式打印下列内容:100A3.140000输入:本题目没有输入数据输出:输出三行数据:100A3.140000示例输入:无示例输出:100A3.1400003、整数求和/acmhome/problemdetail.do?&method=showdetail&id=1001题目描述:求两个整数之和。
输入:输入数据只包括两个整数A和B。
输出:两个整数的和。
样例输入:1 2样例输出:34、交换两个整数的值/sdutoj/problem.php?action=showproblem&problemid=1115题目描述:输入两个变量的值,由终端输入两个整数给变量x、y,然后交换x和y的值后,输出x和y。
实验2 数据类型 运算符与表达式实验报告

实验2 数据类型运算符与表达式实验报告1.分析下列程序,写出运行结果(1)除与求余main(){ printf("%d %d\n",14/3,14%3);printf("%d %d\n",-14/3,-14%3);printf("%d %d\n",14/-3,14%-3);printf("%d %d\n",-14/-3,-14%-3);}运行结果:(2)字符char型与int通用性main(){ char c1='A',c2='B';int a=97,b=98;char c=100,d=99;printf("%c %c\n",c1,c2);printf("%d %d\n",c1,c2);printf("%c %c\n",a,b);printf("%d %d\n",a,b);printf("%d %d\n",a-c1,b-c2);printf("%c %c\n",c,d);}运行结果:(3)转义字符main(){ char c1=’a’,c2=’b’,c3=’c’,c4=’\101’,c5=’\116’;printf("a%cb%c\tc%c\tabc\n",c1,c2,c3);printf("\t\b%c%c",c4,c5) ;}运行结果:(4)自增与自减运算符main(){ int a=6,b=6,c=6;printf("%d %d %d\n",a++,b--,--c);printf("%d %d %d\n",a,b,c);--a;b++;c++;printf("%d %d %d\n",a,b,c);}运行结果:(5)包含复合的赋值运算符的赋值表达式main(){ int a=9;a+=a-=a+a;printf("%d\n",a);}运行结果:(6)测试数据类型的长度#include <stdio.h>main(){ int x;long y;float z;double f;printf("int:%d\nlong:%d\nfloat:%d\ndouble:%d\nchar:%d\n",sizeof(x),sizeof(y),sizeof(z),sizeof(f), sizeof(char));}运行结果:(7)数据类型的转换int→longmain(){ int x=500;long y=100;printf("%ld\n",x*y);}运行结果:(8)数据类型的转换float→intmain(){ int x=5,z;float y=2.2;z=x+y;printf("z=%d\n",z);}运行结果:(9)赋值类型转换 int →float int → double */main() { float x1=23; double x2=23;printf("x1=%f x2=%f\n",x1,x2); }运行结果:(10)强制类型转换main() { float x=3.67;printf("%d\n",(int)x); printf("%f\n",x); }运行结果:2.改错题改正下列程序中的错误,求华氏温度100°F 对应的摄氏温度。
c语言实验总结

c语言实验总结C语言是一种广泛使用的计算机编程语言,作为计算机科学领域的基础知识,学习C语言对程序员来说是至关重要的一步。
在大学期间,我参与了一系列关于C语言的实验,通过这些实验的学习和实践,我不仅增加了对C语言的理解,还提升了自己的编程能力。
在本篇文章中,我将总结我所参与的C语言实验,并分享我的经验与收获。
实验一:基本语法和数据类型在该实验中,我学习了C语言的基本语法和数据类型。
通过学习和练习,我对变量、常量、运算符和表达式有了更深入的理解。
我学会了如何定义和使用变量,以及如何执行基本的算术和逻辑运算。
此外,我还学习了不同数据类型的特点和用途,如整数型、浮点型和字符型。
实验二:流程控制和循环结构在实验二中,我学习了C语言的流程控制和循环结构,包括条件语句和循环语句。
通过实践编写代码,我掌握了if-else、switch和while、for等语句的使用方法。
我学会了如何根据特定条件执行相应的代码块,以及如何使用循环结构重复执行特定的代码片段。
这对于编写有逻辑性的程序非常重要。
实验三:数组和字符串在实验三中,我学习了C语言中数组和字符串的使用。
我了解了数组的定义方式以及如何使用下标来访问和操作数组中的元素。
同时,我还学到了如何使用字符串类型和相关的字符串处理函数,在处理文本数据上具有重要的应用。
通过完成实验,在实践中加深了对数组和字符串的理解,我能够更有效地处理和操作数据。
实验四:函数和指针实验四是关于函数和指针的学习实践。
通过实验,我深入理解了函数的概念和作用,学会了如何定义和调用函数,并了解了函数参数的传递和返回值的使用。
此外,我还学到了指针的概念和基本操作,包括指针的定义、指针和数组的关系以及指针的运算。
掌握了函数和指针,我能够写出更为模块化和灵活的代码,实现更复杂的功能。
实验五:结构体和文件操作实验五是关于结构体和文件操作的实践。
在这个实验中,我学习了如何定义和使用结构体,以及如何在程序中进行文件的读写操作。
实验报告_实验2 数据类型与表达式()

实验报告_实验 2 数据类型与表达式(学生学号__姓名)一、实验目的:1、熟悉基本数据类型(int、char、float、double)占用的字节数和存储形式,能够定义基本数据类型的变量,使用这些类型的数据;2、掌握字符数据的存储形式及其与整数的运算,能正确理解“字符数据”与“字符串”的区别与联系,熟悉常用转义字符的使用;3、熟悉字符常量与一般常量的定义、使用;4、掌握算术运算符(重点是/和%)、自增(++)和自减(--)运算符的使用,能够构建正确的表达式,并输出其结果;5、理解不同类型数据之间运算时的类型转换规则,掌握强制类型转换的方法。
二、实验内容1、(基础题)用sizeof运算符可以得到各种类型数据占用存储单元长度,利用数据间的关系和不同控制符,可以得到查看数据的存储形式。
回答下列问题:(1)sizeof运算符如何使用?它的操作数可以是类型关键字吗?答:可用sizeof(类型名或数据) 来获取该类型数据所占字节数。
可以。
(2)整数的占用长度与其数值大小有关吗?答:有。
(3)字符串中’\’’、’\n’、’\t’的功能各是什么?答:单引号,换行,水平制表。
(4)字符串的一个英文字母占几个字节?一个汉字占几个字节?尾部还有什么字符?答:1个字节;4个字节;结束符‘\0’。
(5)整数的存储形式是什么?答:二进制补码。
2、(基础题)字符数据以整数方式(ASCII)存储的,可以与整数进行+、-运算,既可以用“字符”方式输出,也可以用“整数”方式输出。
回答下列问题:(1)字符数据在内存中是以什么方式存储的?答: ASCII码。
(2)字符数据与整型数据能相互赋值、运算吗?如何以“整数”方式和“字符”方式输出字符?答:能,整数:”%d”,字符:”%c”。
(3)大小写字母的ASCII有什么关系?(如:’G’与’g’)答:ASCII码相差32。
(4)如何由’A’、’a’分别得到后续的大写字母、小写字母?答:’A+1’,’a+1.’(5)字符间的距离如何计算?由一字符能分别得到ASCII比它小5、大10的两个字符吗?若能,如何得到?答:两个ASCII码绝对值相减,’a’-5,’a’+10.(6)说明“C”与’c’的联系与区别,能否写成”dog”、’boy’?答:”C”字符串,’c’字符,能.3、(基础题)符号常量与常变量(即用const关键字定义)的使用:回答问题:(1)写出用符号常量定义PI的格式;#define PI 3.14(2)写出用“常变量”方式定义PI值的语句。
实验二 数据类型与运算符实验报告

XXX大学软件类实验报告
课程名称:C语言程序设计学号:
姓名:
班级:
指导教师:
开课学期:
学院:
XXX大学教务处
3.变量初始化与变量赋值。
四、实验过程及内容:(运行结果请抓图到对应题目的下方)
1.输入下列源程序,进行修改、编译、连接和运行。
2.分析下面的程序并上机验证运行结果。
实验结果:
3.分析下面的程序并上机验证运行结果。
实验结果:
4.分析下面的程序并上机验证、修正后使程序结果和要求一致,a,b,c分别为x的百位、十位和个位。
5.分析下面的程序并上机验证运行结果。
实验结果:
6.程序填空题。
从键盘输入3个整数a、b、c,把b中的值赋给a,把c中的值赋给b,把a的值赋给c,再输出a、b、c的值,要求程序运行结果。
(提示:使用中间变量)。
五、实验小结。
Ex02c语言实验报告

实验二数据类型、运算符和表达式1,实验目的(1)掌握C语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法。
(2)掌握不同的类型数据之间赋值的规律。
(3)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(——)运算符的使用。
(4)进一步熟悉C程序的编辑、编译、连接和运行的过程。
2,实验内容和步骤(1)输入并运行下面程序;运行后如下:在上面printf语句下增加一个printf语句:printf("%d %d\n",c1,c2);再运行,如下:比起第一步加入了printf("%d %d\n",c1,c2);,则表输出时出输出字母a、b外,还要输出其对应的ASC码值。
将第三行改为int c1,c2;再使之运行,结果如下:将第4、5行改为c1=a;c2=b;运行如下:再将第4、5行改为c1="a";c2="b";运行结果如下:字母的赋值不能这样输入,要用单引号,不然回去先错误。
再将第4、5行改为:c1=300;c2=400;运行后结果如下:表示ASC码为300,400分别对应的符号为,?(2)输入并运行以下程序:#include<stdio.h>void main(){char c1='a',c2='b',c3='c',c4='\101',c5='\116';printf("a%c b%c\tc%c\tabc\n",c1,c2,c3);printf("\t\b%c %c\n",c4,c5);}运行结果如下:(3)输入并运行下面的程序化,结果如下:○1将一个负整数赋给一个无符号的变量,会得到什么结果。
负整数最高位是符号位,当转换为无符号位的变量时,最高位的1就变成数字位,其值将增大。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
成都工业学院·计算机工程学院
《程序设计基础》实验报告
1.实验目的
(1)掌握C语言数据类型,熟悉如何定义一个整形、字符型和实型的变量,以及对它们赋值的方法
(2)掌握不同的数据类型之间赋值的规律
(3)学会使用关系运算符,以及包含这些运算符的表达式,特别是自增和自减运算符的使用
2.实验内容
(1)要将China译成密码,译码规律是:用原来字母后面的第4个字母代替原来的字母。
例如A后面第4个字母是E,用E代替A,因
此,China应翻译为Glmre。
请编译一个程序,用赋初值的方式是
c1,c2,c3,c4,c5,五个变量的值分别
为’C’、’h’、’i’、’n’、’a’,经过运算,使
c1,c2,c3,c4,c5,分别为’G’、’l’、’m’、’r’、’e’
①画出算法流程图,输入事先已编好的程序,并运行该程序,分
析是否符合要求。
②改变c1,c2,c3,c4,c5的值分别为Today,修改程序并运行
③修改程序,完成上述译码规则的解码操作,并将密码PSZI解码
成明文
3.流程图
4.源代码
#include <stdio.h>
void main()
{char c1='C',c2='h',c3='i',c4='n',c5='a';
c1+=4;
c2+=4;
c3+=4;
c4+=4;
c5+=4;
printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5);}
修改后的程序
#include <stdio.h>
void main()
{char c1='T',c2='o',c3='d',c4='a',c5='y';
c1+=4;
c2+=4;
c3+=4;
c4+=4;
c5+=4;
printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5);}
将密码PSZI解码成明文
#include <stdio.h>
void main()
{char c1='P',c2='S',c3='Z',c4='I';
c1-=4;
c2-=4;
c3-=4;
c4-=4;
printf("%c%c%c%c\n",c1,c2,c3,c4);}
5.运行结果
将China翻译成密码
将China改成Today
将PSZI翻译成明文
6.出现问题及解决办法
在编译时
printf("%d%d%d%d%d\n",c1,c2,c3,c4,c5);
出现警告
修改方法
printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5);
输出的数据类型与变量类型不同,出项警告
在输入时还会犯标点符号错误的情况,不仔细
7.实验心得
通过编写简单的程序,熟悉了不同数据类型之间的转化,赋值规律。