C语言及算法设计课程实验二:数据类型、运算符和简单的输入输出
一、实验目的
- (1) 掌握c语言数据类型,了解字符型数据和整型数据的内在关系。
- (2) 掌握对各种数值型数据的正确输入方法。
- (3) 学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加( + + )和自减(- -)运算符的使用。
- (4) 学会编写和运行简单的应用程序。
- (5) 进一步熟悉C程序的编辑、编译、连接和运行的过程。
二、实验内容
2.1、输入并运行教材第3章第4题给出的程序:
(1) 输入并运行教材第3章第4题给出的程序如下所示:
#include <stdio.h>
int main()
{
char cl, c2;
cl = 97;
c2 = 98;
printf("%c %c\n"cl, c2);
printf("%d %d\n", cl, c2);
return 0;
}
-
①运行以上程序,分析为什么会输出这些信息。
-
②如果将程序第4,5行改为
cl = 197;
c2 = 198;
运行时会输出什么信息?为什么?
- ③如果将程序第3行改为
int cl,c2;
运行时会输出什么信息?为什么?
2.2、输入第3章第5题的程序
(2) 输入第3章第5题的程序。即:
用下面的 scanf 函数输入数据,使 a = 3, b = 7, x = 8.5, y = 71.82, cl = 'A' , c2 = 'a'
。问 在键盘上如何输入?
#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);
return 0;
}
运行时分别按以下方式输入数据,观察输出结果,分析原因。
通过此题,总结输入数据的规律和容易出错的地方。
2.3、输入以下程序:
输入以下程序:
#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,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语句改为
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;
i = 8;
j = 10;
m += i ++; n -= --j;
printf("i= %d,j= %d,m= %d,n= %d\n", i, j, m, n);
return 0;
}
再编译和运行,分析结果。
2.4、程序设计题:假如我国国民生产总值的年增长率为9%,计算10年后我国国民生产总值与现在相比增长多少百分比。编写程序。
(4)假如我国国民生产总值的年增长率为9%,计算10年后我国国民生产总值与现在相比增长多少百分比。编写程序.(第3章第1题)
计算公式为:
r为年增长率,n为年数,p为与现在相比的倍数。
- ① 输入自己编好的程序,编译并运行,分析运行结果。
- ② 年增长率不在程序中指定,改用scanf函数语句输入,分别输入7%,8%,10%。观察结果。
- ③ 在程序中增加printf函数语句,用来提示输入什么数据,说明输出的是什么数据。
三、实验步骤
3.1、数据类型、运算符和简单的输入输出实验题目1:输入并运行教材第3章第4题给出的程序:
(1) 输入并运行教材第3章第4题给出的程序如下所示:
#include <stdio.h>
int main()
{
char cl, c2;
cl =