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

垂直方向打印两个
#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; }

水平方向打印两个
#include <stdio.h> int main() { printf(" o o \n"); printf("<H> <H>\n"); printf("I I I I\n"); return 0; }

任务2
求和公式计算1+2+3+4+...+n的结果并输出。n从键盘输入。
#include <stdio.h> int main() { int n,sum; scanf("%d",&n); sum=(1+n)*n/2; printf("sum=%d\n",sum); return 0; }

写法3:sum=n/2*(n+1)在输入奇数时出错,原因是n为int型,而n/2后出现了小数,所以会计算错误
任务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的值
任务4
#include <stdio.h> int main() { int x,t,m; x=123; 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; }



数字倒序,由于只有三个因此只能将三位数倒过来,四位数就只能从后往前倒三位,两位数会在末尾加上0补成三位。
任务5
输入三角形三边,判断能否构成三角形。
#include <stdio.h> int main() { float a,b,c; scanf("%f%f%f",&a,&b,&c); if(a+b>c&&b+c>a&&c+a>b) printf("能构成三角形\n"); else printf("不能构成三角形\n"); return 0; }



任务6
计算10亿秒等于多少年,结果四舍五入取整。
#include <stdio.h> int main() { int year; year=1e9/60/60/24/365; printf("十亿秒约等于%d年",year); return 0; }

任务7
生成一个60到100之间的随机整数。
#include <stdio.h> #include <stdlib.h> #include <time.h> int main() { int n; srand((unsigned)time(0)); n = rand()%41 + 60; printf("n = %d\n", n); return 0; }

任务8
两次输入y或Y输出 built
否则输出 destroyed 。
#include <stdio.h> int main() { char a1,a2; a1=getchar(); getchar(); a2=getchar(); if((a1=='y'||a1=='Y')&& (a2=='y'||a2=='Y')) printf("\n built \n"); else printf("\n destroyed \n"); return 0; }




浙公网安备 33010602011771号