数据类型、运算符和简单的输入输出实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验④:
① 运行结果如图:
②将原程序进行修改后编译并运行,结果如图:
运行时分别按以下方式输入数据,观察输出结果,分析原因。 ① a=3,b=7,x=8.5,y=71.82,A,a↙ ② a=3 b=7 x=8.5 y=71.82 A a↙ ③ a=3 b=7 8.5 71.82 A a↙ ④ a=3 b=7 8.5 71.82Aa↙ ⑤ 3 7 8.5 71.82Aa↙ ⑥ a=3 b=7↙
① 编译和运行程序,注意 i,j,m,n 各变量的值。 ② 将第 6,7 行改为
m=i++;
n=++j; 再编译和运行,分析结果。 ③ 程序改为
#include<stdio.h> int main() {int i,j;
i=8; j=10; printf("%d,%d\n",i++,j++); }
再编译和运行,分析结果。 ④ 在③的基础上,将 printf 语句改为
R 为年增长率,n 为年数,p 为与现在相比的倍数。#include<stdio.h>
#include<math.h> int main() {
float p,r,n; r=0.1; n=10; p=pow(1+r,n); printf("p=%f\n",p); return 0;
}
①输入自己编好的程序,编译并运行,分析运行结果。 ②在程序中增加 printf 函数语句,用来提示输入什么数据,说明输出的是什么数据。
课程名称 指导老师 班级
嘉应学院 计算机学院 实验报告
程序设计基础 实验名称
百度文库
实验地点
实验时间
提交时间
姓名
座号
一、实验目的和要求
(1)掌握 C 语言数据类型,了解字符型数据和整型数据的内在关系。 (2)掌握对各种数值型数据的正确输入方法。 (3)学会使用 C 的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++) 和自减(--)运算符的使用。 (4)学会编写和运行简单的应用程序。 (5)进一步熟悉 C 程序的编辑、编译、连接和运行的过程
(1)对程序进行编译,将该程序进行连接,运行该程序。 (2)如果将程序第 4,5 行改为
C1=197; C2=198; 再次进行编译并连接运行。 (3)将程序第三行改为 int c1,c2; 对程序进行编译、连接和运行。
实验②
(二)输入第 3 章第 5 题的程序。即: 用下面的 scanf 函数输入数据,使 a=3,b=7,x=8.5,y=71.82,c1=`A`,c2=`a`。
用“%d”格式输出时,输出 c1=-59,c2=—58.这是按补码形式输出的,内在字节中第一位 为 1 时,作为负数。所以用 char 类型变量时,给它赋的值应该在 0~127 范围内。 (3)运行结果如图:
输出结果与(1)相同,因为赋的值在 int 类型的有效范围内。
实验②:
运行结果如图: ①

车”被作为一个字符送到内存输入缓冲区,被 c1 读入,字符 A 被 c2 读取,所以在执行 printf 函数输出 c1 时,就输出一个换行,在下一行输出逗号和 c2 的值 A。
实验③
运行结果如图 ①





++i 为使用 i 之前,先使 i 加 1;i++为使用 i 之后,使 i 的值加 1. --i 为使用 i 之前,先使 i 减 1;i--为使用 i 之后,使 i 的值减 1.
8.5 71.82↙ A↙ a↙ ⑦ a=3 b=7↙ 8.5 71.82↙ Aa↙ ⑧ a=3 b=7↙ 8.5 71.82Aa↙
实验③
输入以下程序:
#include<stdio.h> int main() {int i,j,m,n;
i=8; j=10; m=++i; n=j++; printf("%d,%d,%d,%d\n",i,j,m,n); return 0; }
i=8; j=10; m+=i++;n-=--j; printf("i=%d,j=%d,m=%d,n=%d\n",i,j,m,n); return 0; }
再编译和运行,分析结果。
实验④
假如我国国民生产总值的年增长率为 10%,计算 10 年后我国国民生产总值与现在相比增长多少
百分比。编写程序。
计算公式为: p (1 r)n
#include<stdio.h> #include<math.h> int main() {
float p,r; int n; printf("请输入增长率为:"); scanf("%f",&r); printf("请输入年数:"); scanf("%i",&n); pp=ripnotfw("(%1+i r年,n)后; 我国国民生产总值与现在相比增长了 p=%f\n",n,p); return 0; }
错,及时改正。 ④ 进行编译和连接。如果在编译和连接过程中发现错误,频幕上会出现“报错信息”,
根据提示找到出错位置和原因,加以改正。再进行编译,如此反复直到不出错为止。 ⑤ 运行程序并分析运行结果是否合理。在运行是要注意当输入不同的数据时所得结果
是否正确,应运行多次,分别检查在不同情况下结果是否正确。 实验内容:编译以下题目的程序并调试运行。
#include <stdio.h> int main() {int a,b;
float x,y; char c1,c2; scanf("a=%d b=%d",&a,&b); scanf("%f %e",&x,&y); scanf("%c%c",&c1,&c2); printf("a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%c\n",a,b,x,y,c1,c2); return 0; }






分析:在输入 8.5 和 71.82 两个实数给 x 和 y 后,应紧接着输入字符 A,中间不要有空格,由 于 A 是字母而不是数字,系统在遇到字母 A 时就确定输入给 y 的数值已经结束。字符 A 就送 到下一个 scanf 语句中的字符变量 c1(如图④⑧是正确的)。如果在输入 8.5 和 71.82 两个实数 后输入空格符,则 71.82 后面输入的空格符就被 c1 读入,c2 读入了字符 A。输出 c1 时就输出 空格,输出 c2 的值为 A(如图③⑥)。如果在输入 8.5 和 71.82 两个实数后按回车键,这时“回
四、结果分析 实验①
(1)运行结果如图:
第 1 行是将 c1,c2 按%c 的格式输出,97 是字符 a 的 ASCII 代码,98 是字符 b 的 ASCII 代 码。
第 2 行是将 c1,c2 按%d 的格式输出,所以输出两个十进制整数。 (2)运行结果如图:
由于 Visual C++6.0 字符型数据是作为 signed char 类型处理的,它存字符的有效范围为 0~127,超过此范围的处理方法,不同的系统得到的结果不同,因而用“%c”格式输出时,结 果是不可预料的。
Printf (“%d,%d\n”,++i,++j); 再编译和运行。 ⑤ 再将 printf 语句改为
Printf(“%d,%d,%d,%d\n”,I,j,i++,j++); 再编译和运行,分析结果。 ⑥程序改为:
#include<stdio.h> int main() {int i,j,m=0,n=0;
实验①
(一)在 Visual C++6.0 中输入教材第 3 章第 4 提给出的程序:
#include <stdio.h> int main() {char c1,c2;
c1=97; c2=98; printf(“%c,%c\n”,c1,c2); printf(“%d%d\n”,c1,c2); return 0; }
二、实验环境和方法
实验方法:
(一)综合运用课本所学的知识,用不同的算法实现在不同的程序功能。 (二)结合指导老师的指导,解决程序中的问题,正确解决实际中存在的异常情况,逐步 改善功能。 (三)根据实验内容,编译程序。
实验环境:Windows xp Visual C++6.0
三、实验内容及过程描述
实验步骤: ① 进入 Visual C++ 6.0 集成环境。 ② 输入自己编好的程序。 ③ 检查一遍已输入的程序是否有错(包括输入时输错的和编程中的错误),如发现有
相关文档
最新文档