实验一
实验结论
task 1
task1-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; }
task1-2
//打印一个字符小人 #include <stdio.h> int main() { printf(" o o \n"); printf("<H> <H>\n"); printf("I I I I\n"); return 0; }
task 2
// 1+2+3+...+n (设n的取值在100以内) // 用数学归纳法 (求和公式计算) #include <stdio.h> int main() { int n, sum; // 从键盘上输入一个十进制整数给n scanf("%d", &n); // 待补足代码 sum = n*(n+1)/2; // 打印输出求和结果 printf("sum = %d\n", sum); return 0; }
回答问题:写法1,2可以满足要求;写法3,4不可以
原因:符号优先级为小括号>乘=除,所以3和4计算顺序出错
task 3
#include <stdio.h> int main() { int a, b, t; a = 3; b = 4; printf("a = %d, b = %d\n", a, b); t = a; a = b; b = t; printf("a = %d, b = %d\n", a, b); return 0; }
回答问题:作用是交换a和b的赋值
task 4
#include <stdio.h> int main() { int x, t, m; x = 456; printf("x = %d\n", x); t = 0; m = x % 10; t = t *10 + m; x = x / 10; m = x % 10; t = t * 10 + m; x = x / 10; m = x % 10; t = t * 10 + m; x = x / 10; printf("t = %d\n", t); return 0; }
回答问题:作用是使x每个数位上的数字倒序排列并赋值给t
task 5
// 从键盘上输入三个数据作为三角形边长,判断其能否构成三角形 // 构成三角形的条件: 任意两边之和大于第三边 #include <stdio.h> int main() { float a, b, c; // 输入三边边长 scanf("%f%f%f", &a, &b, &c); // 判断能否构成三角形 // 补足括号里的逻辑表达式 if (a+b>c) printf("能构成三角形\n"); else printf("不能构成三角形\n"); return 0; }
task 6
// 计算10亿秒约等于多少年,并打印输出 #include <stdio.h> int main() { int year; // 补足代码 float t; t=10^9/31536000; year=t+0.5; printf("10亿秒约等于%d年\n", year); return 0; }
task 7
// 生成一个[60, 100]区间之间的随机整数,并打印输出 #include <stdio.h> #include <stdlib.h> #include <time.h> int main() { int n; // 补足代码 srand((unsigned int)time(NULL)); n=rand()%40+60; printf("n = %d\n", n); return 0; }
task 8
#include <stdio.h> int main() { char ans1, ans2; printf("每次课前认真预习、课后及时复习了没? (输入y或Y表示有,输入n或N表示没有) : "); ans1 = getchar(); // 从键盘输入一个字符,赋值给ans1 getchar(); // 思考这里为什么要加这一行。试着去掉这一行,看看对运行有没有影响。 printf("\n动手敲代码实践了没? (输入y或Y表示敲了,输入n或N表示木有敲) : "); ans2 = getchar(); if (ans1=='y'&& ans2=='y' || ans1=='Y'&& ans2=='Y') printf("\n罗马不是一天建成的, 继续保持哦:)\n"); else printf("\n罗马不是一天毁灭的, 我们来建设吧\n"); return 0; }
实验总结
1,对一些算法函数的掌握不够牢固,写代码的时候也不够细心,经常出一些语法错误,之后应当经常写代码练手
2,今后会多上C++官网浏览学习,以求熟悉常用的语法函数,不在写代码时露怯
3,写代码时注意分隔,别忘句末的分号!!!