实验1 C语言输入输出和简单程序编写
task1_1.c
源代码
// 打印一个字符小人 #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; }
tssk1.2
// 打印一个字符小人 #include <stdio.h> int main() { printf(" O O\n"); printf("<H> <H>\n"); printf("I I I I\n"); return 0; }
task2.c
// 从键盘上输入三个数据作为三角形边长,判断其能否构成三角形 // 构成三角形的条件: 任意两边之和大于第三边 #include <stdio.h> int main() { double a, b, c; // 输入三边边长 scanf("%lf%lf%lf", &a, &b, &c); // 判断能否构成三角形 // 补足括号里的逻辑表达式 if(a+b>c) printf("能构成三角形\n"); else printf("不能构成三角形\n"); return 0; }
task3.c
#include <stdio.h>
int main() {
char ans1, ans2;
while (1) {
printf("每次课前认真预习、课后及时复习了没? (输入y或Y表示有,输入n或N表示没有): ");
ans1 = getchar();
getchar(); // 读取换行符
printf("\n动手敲代码实践了没? (输入y或Y表示敲了,输入n或N表示木有敲) : ");
ans2 = getchar();
getchar(); // 读取换行符
// 检测 EOF
if (ans1 == EOF || ans2 == EOF) {
printf("\n程序结束。\n");
break; // 退出循环
}
// 判断用户回答
if ((ans1 == 'y' || ans1 == 'Y') && (ans2 == 'y' || ans2 == 'Y')) {
printf("\n罗马不是一天建成的, 继续保持哦:)\n");
} else {
printf("\n罗马不是一天毁灭的, 我们来建设吧\n");
}
printf("\n按 Ctrl+Z (Windows) 结束输入,继续输入任何字符继续。\n");
}
return 0;
}
task4.c
#include<stdio.h> int main() { double x, y; char c1, c2, c3; int a1, a2, a3; scanf("%d%d%d",&a1,&a2,&a3);#要使用&存储a1,a2,a3的元素内存地址 printf("a1 = %d, a2 = %d, a3 = %d\n", a1,a2,a3); getchar(); scanf("%c%c%c",&c1,&c2,&c3); printf("c1 = %c, c2 = %c, c3 = %c\n", c1, c2, c3); scanf("%lf,%lf",&x,&y); printf("x = %lf,y = %lf\n", x, y);#在输入时3.6与4.2之间要加入逗号 return 0; }
task5.c
// 计算10亿秒约等于多少年,并打印输出 #include <stdio.h> int main() { int year; // 补足代码 // ××× year=1000000000/(365*24*3600) printf("10亿秒约等于%d年\n", year); return 0; }
task6.c
#include <stdio.h> #include <math.h> int main() { double x, ans; while(scanf("%lf", &x) != EOF) { ans = pow(x, 365); printf("%.2f的365次方: %.2f\n", x, ans); printf("\n"); } return 0; }
task7.c
#include <stdio.h> #include <math.h> int main() { double f, c,x; while(scanf("%lf", &c) != EOF) { f=9*c/5+32; printf("摄氏度c=%lf时,华氏度f=%lf\n", c, f); } return 0; }
task8.c
#include <stdio.h> #include <math.h> // 引入数学库以使用sqrt函数 int main() { double a, b, c, s, area; char choice; printf("欢迎使用三角形面积计算工具。\n"); printf("输入三角形三边边长(a b c),或输入'q'退出:\n"); while (1) { printf("请输入三边边长(a b c): "); scanf("%lf %lf %lf", &a, &b, &c); // 检查是否输入了退出命令 if (scanf("%c", &choice) == 1 && (choice == 'q' || choice == 'Q')) { break; // 退出循环 } // 清除输入缓冲区中的换行符(如果有的话) while (getchar() != '\n'); // 计算半周长 s = (a + b + c) / 2; // 使用海伦公式计算面积 area = sqrt(s * (s - a) * (s - b) * (s - c)); // 输出结果,保留三位小数 printf("三角形面积为: %.3f\n", area); } printf("程序结束。\n"); return 0; }