实验1

任务一1.1

  • 源代码
点击查看代码
#include <stdio.h>
int main()
{
	printf(" O  O\n");
	printf("<H><H>\n");
	printf("I II I\n");
	
	return 0;
}

  • 运行截图

SharedScreenshot

任务一1.2

  • 源代码
点击查看代码
#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;
}

  • 运行截图

SharedScreenshot

任务二

  • 源代码
点击查看代码
#include<stdio.h>

int main()
{
	double a,b,c;
	
	scanf("%lf%lf%lf",&a,&b,&c);
	
	if(a+b>c&&a+c>b&&b+c>a)
	printf("能构成三角形\n");
	else
	printf("不能构成三角形\n");
	
	return 0;
	
}	

  • 运行截图

SharedScreenshot

任务三

  • 源代码
点击查看代码
#include <stdio.h>
int main()
{
	char ans1, ans2;
	
	printf("每次课及时预习/复习了没?(是-输入y或Y,否-输入n或N):");
	ans1 = getchar();
	
	getchar();
	
	printf("\n动手敲代码实践了没?(是-输入y或Y,否-输入n或N):");
	ans2 = getchar();
	
	if ((ans1 == 'y' || ans1 == 'Y') && (ans2 == 'y' || ans2 == 'Y'))
	printf("\n罗马不是一天建成的,继续保持哦:)\n");
	else
	printf("\n罗马不是一天毁灭的,我们来建设吧\n");
	
	return 0; 
	
}

  • 运行截图

SharedScreenshot

问题
 getchar() 读取缓冲区字符。输入Y再回车,缓冲区存了 Y 和 \n 。第9行本来是用来读走换行符;删掉后,下一个 getchar() 直接读到残留换行,直接判定,跳过输入。
但单个 getchar() 只能清理1个字符。如果输入 Y  (Y加空格再回车),缓冲区有空格+换行,

任务四

  • 源代码
点击查看代码
![image](https://img2024.cnblogs.com/blog/3861868/202610/3861868-20261019193417427-918010763.png)

  • 运行截图

SharedScreenshot

任务五

  • 源代码
点击查看代码
![image](https://img2024.cnblogs.com/blog/3861868/202610/3861868-20261019193723329-1776503228.png)

  • 运行截图

SharedScreenshot

任务六

  • 源代码
点击查看代码
![image](https://img2024.cnblogs.com/blog/3861868/202610/3861868-20261019194141013-671560991.png)

  • 运行截图

SharedScreenshot

实验总结

通过这次实验,我感受到到了编程的美丽以及在实际生活中的应用,我会在以后认真学习编程

posted @ 2026-10-19 19:47  罗程  阅读(4)  评论(0)    收藏  举报