实验1 c语言开发环境使用和数据类型、运算符、表达式
tesk1
//打印一个字符小人
#include<stdio.h>
int main()
{
printf(" 0 \n");
printf("<H>\n");
printf("I I\n");
getchar();
return 0;
}

tesk2
//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;
}

问题:第四种不能实现。因为代码中字符为int类型,会舍弃小数取整数,第四种(n+1)/2计算结果原本为小数,但运行结果为整数25,导致结果错误
tesk3
#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;
}

讨论:通过暂存至t内,交换a,b数值
tesk4
#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;
}
问题:作用是将原来x值的个十百位数顺序倒换
tesk5
#include<stdio.h>
int main()
{
float a,b,c;
//输入三边长
scanf("%f%f%f",&a,&b,&c);
//判断能否构成三角形
if((a+b>c) || (a+c>b) || (b+c>a))
printf("能够成三角形");
else
printf("不能构成三角形");
return 0;
}

tesk6
//计算10亿秒等于多少年,打印输出
#include<stdio.h>
int main()
{
int year;
year=int(1e+9/60/60/24/365+0.5);
printf("10亿秒约等于%d年\n",year);
return 0;
}

test7
//生成一个【60,100】区间的随机整数,并打印输出
#include<stdlib.h>
#include<stdio.h>
#include<time.h>
int main()
{
int n;
srand((unsigned)time(NULL));
n=rand()%41+60;
printf("n=%d\n",n);
return 0;
}

test8
#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;
}


浙公网安备 33010602011771号