第一次作业
实验任务1
1.
//打印一个字符小人 #include <stdio.h> int main(){ printf(" o \n"); printf("<H>\n"); printf("I I\n"); printf(" o \n"); printf("<H>\n"); printf("I I\n"); return 0; }

2.
//打印一个字符小人 #include <stdio.h> int main(){ printf(" o o\n"); printf("<H> <H>\n"); printf("I I I I\n"); return 0; }

实验任务2
1.
/* 用c语言实现的一个简单算术运算程序 */ #include <stdio.h> int main() { int x, y; // 定义两个整型变量,用来保存运算数据 int r1, r2, r3, r4; // 定义四个整型变量,用来保存加减乘除运算结果 x = 1; y = 2; r1 = x + y; r2 = x - y; r3 = x * y; r4 = x / y; printf("r1 = %d\n", r1); // 在屏幕上输出r1中存放的结果 printf("r2 = %d\n", r2); // 在屏幕上输出r2中存放的结果 printf("r3 = %d\n", r3); // 在屏幕上输出r3中存放的结果 printf("r4 = %d\n", r4); // 在屏幕上输出r4中存放的结果 return 0; }

2.
/* 用c语言实现的一个简单算术运算程序 */ #include <stdio.h> int main() { float x, y; // 定义两个整型变量,用来保存运算数据 float r1, r2, r3, r4; // 定义四个整型变量,用来保存加减乘除运算结果 x = 1; y = 2; r1 = x + y; r2 = x - y; r3 = x * y; r4 = x / y; printf("r1 = %f\n", r1); // 在屏幕上输出r1中存放的结果 printf("r2 = %f\n", r2); // 在屏幕上输出r2中存放的结果 printf("r3 = %f\n", r3); // 在屏幕上输出r3中存放的结果 printf("r4 = %f\n", r4); // 在屏幕上输出r4中存放的结果 return 0; }

3.两次数据类型不同。第一次为整型数据,除法运算时只保留整数,舍去小数,故r4的值为0;第二次为浮点型数据,除法运算时保留真实值,故r4的值为0.500000。
实验任务3
1.
#include <stdio.h> int main() { int n, r1, r2, r3, r4; n = 100; r1 = n*(n+1)/2; r2 = (n+1)*n/2; r3 = n/2*(n+1); r4 = (n+1)/2*n; printf("n = %d\n", n); printf("r1 = %d\n", r1); printf("r2 = %d\n", r2); printf("r3 = %d\n", r3); printf("r4 = %d\n", r4); return 0; }

2.
#include <stdio.h> int main() { int n, r1, r2, r3, r4; n = 101; r1 = n*(n+1)/2; r2 = (n+1)*n/2; r3 = n/2*(n+1); r4 = (n+1)/2*n; printf("n = %d\n", n); printf("r1 = %d\n", r1); printf("r2 = %d\n", r2); printf("r3 = %d\n", r3); printf("r4 = %d\n", r4); return 0; }

3.
(1)
n*(n+1)/2对应n(n+1)/2
(n+1)*n/2对应(n+1)n/2
n/2*(n+1)对应n(n+1)/2
(n+1)/2*n对应(n+1)n/2
(2)
当n为奇数时,整型数据下,n/2只保留了整数部分而舍去了小数部分,故变量r3会出现与变量r1.r2不同的计算结果;
当n为偶数时,n+1为奇数,整型数据下,(n+1)/2只保留了整数部分而舍去了小数部分,故变量r4会出现与变量r1.r2不同的计算结果。
实验任务4
1.
// 测试你是哪一类学习者 #include <stdio.h> int main() { int answer; char words[5000]; printf("网课学习让一些人欢喜一些人忧.\n"); printf("1. 作为一个宅,社恐,觉得这样很好. 有网络,自主学习,很ok.\n"); printf("2. 不喜,不喜,很不喜. 眼睛快瞎了. 脑壳有点卡...\n"); printf("3. 中间派. 不知道. 说不清.\n"); printf("4. 其它...\n"); printf("你的选择: "); scanf("%d", &answer); if(answer == 4) { printf("请补充说明你的想法: \n"); getchar(); // 这行代码为什么放在这里,大家暂时不用管 gets(words); // 从键盘输入你的想法,输完后,敲回车键 } printf("\n"); // 换行 printf("当遇到问题时, 你会选择:\n"); printf("1. 遇到问题, 就解决问题。不懂的,搜索式学习,逐个攻破.\n"); printf("2. 遇到问题, 不高兴。然后,...,没有了.\n"); printf("3. 其它...\n"); printf("你的选择: "); scanf("%d", &answer); if(answer == 1) printf(":)\n"); else if(answer == 2) printf("这样不能解决问题啊...我们选择1好不好:)\n"); else if(answer == 3) { printf("请补充说明你的想法: \n"); getchar(); // 这行代码为什么放在这里,大家暂时不用管 gets(words); // 从键盘输入你的想法,输完后,敲回车键 } return 0; }

2.
// 测试你是哪一类吃货 #include <stdio.h> int main() { int answer; char words[5000]; printf("你最喜欢吃什么?\n"); printf("1. 粉丝包.\n"); printf("2. 汤达人泡面.\n"); printf("3. 螺狮粉.\n"); printf("4. 其它...\n"); printf("你的选择: "); scanf("%d", &answer); if(answer == 4) { printf("请补充说明你的想法: \n"); getchar(); // 这行代码为什么放在这里,大家暂时不用管 gets(words); // 从键盘输入你的想法,输完后,敲回车键 } printf("\n"); // 换行 printf("当你很饿但没到饭点, 你会选择:\n"); printf("1. 立刻就吃很多.\n"); printf("2. 一直饿到饭点.\n"); printf("3. 其它...\n"); printf("你的选择: "); scanf("%d", &answer); if(answer == 1) printf(":)\n"); else if(answer == 2) printf("这样饿着可很难受哦,可以适当吃点.\n"); else if(answer == 3) { printf("请补充说明你的想法: \n"); getchar(); // 这行代码为什么放在这里,大家暂时不用管 gets(words); // 从键盘输入你的想法,输完后,敲回车键 } return 0; }

实验总结
1.我懂得了“除法运算在不同数据类型下的运算规则”。
2.我体会到了C语言的魅力与神奇。
3.C语言很难,但很有趣。
浙公网安备 33010602011771号