习题1
任务一:
更改后:原因是a和b的赋值超出了long型的最大内容,将long改为double
#include <stdio.h>
void main()
{
double a,b,sum;
a=1234567890;
b=2000000000;
sum=a+b;
printf("sum=%.f\n",sum);
}
任务二
可以把c1='D'修改成c1=68,输出结果一样。
#include <stdio.h>
void main()
{
char c1,c2;
c1=68;
c2=c1+1;
printf("%c,%c\n",c1,c2);
printf("%d,%d\n",c1,c2);
}
任务三:
3.1、编程实现把任意输入的一个小写字母变大写字母输出。
#include <stdio.h>
void main()
{
char c1,c;
scanf("%c",&c1);
c=c1-32;
printf("输出的大写字母为%c\n",c);
}
3.2、编程实现把任意一个三位的正整数反向输出,若是321则输出123。
#include <stdio.h>
void main()
{
int a,b,c,n;
scanf("%d",&n);
a=n/100;
b=(n/10)%10;
c=n%10;
printf("输出为=%d%d%d\n",c,b,a);
}
3.3、已知数学公式s=√a^2+b^2+c^2。编程实现输入a、b、c的值,输出s的值,结果保留3位有效数字。
#include <stdio.h>
#include <math.h>
void main()
{
int a,b,c;
double s;
scanf("%d,%d,%d",&a,&b,&c);
s=sqrt(a*a+b*b+c*c);
printf("输出的s为%.3f\n",s);
}
3.4、编程实现任意输入3个数字字符,输出这3个数字字符所对应的整数之和,若输入数字字符'4'、'8'、'6' ,则输出4+8+6的和18。
#include <stdio.h>
void main()
{
char a,b,c;
int s=0;
printf("请输入三个数字字符:");
scanf("%c,%c,%c",&a,&b,&c);
a=a-'0';
b=b-'0';
c=c-'0';
s=a+b+c;
printf("%d+%d+%d=%d\n",a,b,c,s);
}