3-1
#include <stdio.h>
int main()
{
float f,c;
//float:浮点型数据类型,可定义正负小数
printf("Please Input F=\n");
scanf("%f",&f);
//scanf:数据输入函数 scanf("x=%d",&x);
c=(f-32)*5/9;
printf("f=%f\nc=%f\n",f,c);
return 0;
}
3-2存疑
#include <stdio.h>
int main()
{
float p=1000,r1=0.0036,r2=0.0225,r3=0.0198,p1,p2,p3;
p1=p*(1+r1);
p2=p*(1+r2);
p3=p*(1+r3/2)*(1=r3/2);
printf("p1=%f\n p2=%f\n p3=%f\n",p1,p2,p3);
return 0;
}
3-3
#include <stdio.h>
int main()
{
char c1,c2;
c1='A';
c2=c1+32;
printf("%c\n",c2);
printf("%d\n",c2);
return 0;
}
3-3补填注释
#include <stdio.h>
int main()
{
char c1,c2;
/*
char 是“定义数据类型”的函数;
作用是“定义字符型变量”;
比方int “定义整型数据”的函数;
int a = 3;
这里int 是类型, a 是整型变量,3是赋值;
char s = 'A';
char是字符类型,s是字符型变量,A是赋值给变量s;
char s[] = "c program";
char是字符类型,s[]是字符型数组,"c program"是赋给数组的值;
*/
c1='A';
c2=c1+32;
printf("%c\n",c2);
printf("%d\n",c2);
/*
"格式说明符号";
用于格式的输入与输出;
就是当printf和scanf函数中在输入输出时,对不同类型的数据(如int,float,char等)要使用不同的格式来进行说明;
%d,用来输出十进制整数;
%f,用来输出实数(包括单,双精度),以小数形式输出,默认情况下保留小数点6位;
%c,用来输出一个字符;
%s,用来输出一个字符串;
*/
return 0;
}
3-4存疑
#include <stdio.h>
#include <math.h>
int main()
{
double a,b,c,s,area;
printf("Please input a b c\n");
scanf("%f,%f,%f",&a,&b,&c);
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("area=%f\n",area);
return 0;
}
3-5 自己改编的程序
#include <stdio.h>
#include <math.h>
int main()
{
double a,b,c,disc,x1,x2,p,q;
printf("Please input a b c\n");
scanf("%lf,%lf,%lf",&a,&b,&c);
//double的双精度浮点值,格式声明要用%lf
disc=b*b-4*a*c;
if(disc,0)
printf("This question hasn't real roots\n");
else
{
p=-b/(2.0*a);
q=sqrt(disc)/(2.0*a);
x1=p+1;
x2=p-q;
printf("real roots:\nx1=%7.2f\nx2=%7.2f\n",x1,x2);
}
return 0;
}
有疑问的3-5
#include <stdio.h>
#include <math.h>
int main()
{
double a,b,c,disc,x1,x2,p,q;
scanf("%lf,%lf,%lf",&a,&b,&c);
disc=b*b-4*a*c;
p=-b/(2.0*a);
q=sqrt(disc)/(2.0*a);
x1=p+q;
x2=p-q;
printf("x1=%5.5f\nx2=%5.5f\n",x1,x2);
return 0;
}
3-6
#include <stdio.h>
int main()
{
double a=1.0;
printf("%f\n",a);
return 0;
}
3-7及其下方内容
#include <stdio.h>
int main()
{
float a;
a=1000/3.0;
printf("%f\n",a);
printf("%-25.15f,%25.15f\n",a,a);
return 0;
}
e、E格式符-——%e格式声明——指数形式输出实数
#include <stdio.h>
int main()
{
printf("%e\n",123.456);
printf("%13.2e\n",123.456);
printf("%E\n",123.456);
printf("%13.2E\n",123.456);
printf("%e\n",-123.6);
printf("%13.2e\n",-123.6);
printf("%E\n",-123.6);
printf("%13.3E\n",-123.6);
printf("%e\n",0.123456);
printf("%13.2e\n",0.123456);
printf("%E\n",0.123456);
printf("%13.2E\n",0.123456);
printf("%e\n",-0.123456);
printf("%13.2e\n",-0.123456);
printf("%E\n",-0.123456);
printf("%13.2E\n",-0.123456);
return 0;
}
u、d、o、x格式符——无符号十进制、有符号十进制、八进制、十六进制输出实数
#include <stdio.h>
int main()
{
char x='A';
printf("%u\t%d\t%o\t%x\n",x,x,x,x);
return 0;
}
c、s格式符——字符形式、字符串形式输出符号——存疑
#include <stdio.h>
int main()
{
char x='A';
//char定义单个字符,单引号;定义字符串,双引号
//''、""表示取其中字符对应的数值的内存地址,显示的就是字符
//若不用取地址符''、"",直接用char x=65;显示出的也是A
char y[5]="abcde";
//此处显示出现错误,未知原因
char *z="abcde";
//似乎是一种指针用法
printf("%c\n",x);
printf("%s\n",y);
printf("%s\n",z);
return 0;
}
scanf函数
#include <stdio.h>
int main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
//输入时应该输入"1 2 3"才能显示三个数字
printf("%d\t%d\t%d\n",a,b,c);
return 0;
}
#include <stdio.h>
int main()
{
int a,b,c;
scanf("%d,%d,%d",&a,&b,&c);
//为什么输入"1,2,3"后显示的不对
printf("%d\t%d\t%d\n",a,b,c);
return 0;
}
#include <stdio.h>
int main()
{
int a,b,c;
scanf("a=%db=%dc=%d",&a,&b,&c);
//输入时应该输入"a=1b=2c=3"才能显示三个数字
printf("%d\t%d\t%d\n",a,b,c);
return 0;
}
#include <stdio.h>
int main()
{
int a,b,c;
scanf("a=%d,b=%d,c=%d",&a,&b,&c);
//输入时应该输入"a=1,b=2,c=3"才能显示三个数字
printf("%d\t%d\t%d\n",a,b,c);
return 0;
}
#include <stdio.h>
int main()
{
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
//输入时应该输入"1 2 3"才能显示三个数字
printf("%d\t%d\t%d\n",a,b,c);
return 0;
}
#include <stdio.h>
int main()
{
int a,b,c;
scanf("%d:%d:%d",&a,&b,&c);
//输入时应该输入"1:2:3"才能显示三个数字
printf("%d\t%d\t%d\n",a,b,c);
return 0;
}
3-8
#include <stdio.h>
int main()
{
char a='B',b='O',c='Y';
putchar(a);
putchar(b);
putchar(c);
putchar('\n');
return 0;
}
#include <stdio.h>
int main()
{
int a=66,b=79,c=89;
putchar(a);
putchar(b);
putchar(c);
putchar('\n');
return 0;
}
#include <stdio.h>
int main()
{
putchar('\101');
putchar('\'');
putchar('\015');
//putchar('\x'),x为转义字符
//putchar(y),y为字符型,如a,B
putchar('\n');
return 0;
}
#include <stdio.h>
int main()
{
char a,b,c;
a=getchar();
b=getchar();
c=getchar();
//输入abc,显示abc
/* 输入
a
//输入一个字符,按一下enter
b
c
显示
a
b
c
*/
putchar(a);
putchar(b);
putchar(c);
//putchar('\x'),x为转义字符
//putchar(y),y为字符型,如a,B
putchar('\n');
return 0;
}
#include <stdio.h>
int main()
{
putchar(getchar());
putchar(getchar());
putchar(getchar());
putchar('\n');
return 0;
}
3-9
#include <stdio.h>
int main()
{
char c1,c2;
c1=getchar();
c2=c1+32;
putchar(c2);
putchar('\n');
return 0;
}