}
printf("%disthebiggestnumber!
\n",s);
return0;
}
P036按大小顺序输出一些数.
#include<>
intmain()
{
inti,j,a[4],s=0;
printf("Pleaseinput5numbers:
\n");for(i=0;i<=4;i++)
{
scanf("%d",&a[i]);}
for(i=0;i<=3;i++){
for(j=i+1;j<=4;j++){
if(a[i]>a[j]){
s=a[i];
a[i]=a[j];
a[j]=s;
}
}
}
for(i=0;i<=4;i++)printf("%d-",a[i]);
return0;
}
P036求1至100的总合.
#include<>
intmain()
{
inti,sum=0;for(i=0;i<101;i++)
sum=sum+i;
printf("Thesumofonetoonehundredis%d!
\n",sum);
return0;
}
P036判断一个数能否同时被3和5整除.
#include<>
intmain()
{
intn;
printf("Pleaseinputanumber:
\n");
scanf("%d",&n);
if(n%3==0&&n%5==0)printf("Canbedevideby3and5!
\n");
else
printf("Cannotbedevideby3and5!
\n");
return0;
}
P036输出100-200间的素数.
#include<>#include<>qrt是求根,属数学函数.
intmain(){
inti;
for(i=100;i<=200;i++)if(prime_number(i)==1)printf("%d",i);
return0;
}
intprime_number(doublem){
intj,k;
k=(int)sqrt(m);for(j=2;j<=k;j++)
{
if(m%j==0)
return0;}
return1;
}
#include<>
#include<>
intmain()
{
inti;
for(i=100;i<=200;i++){
if(prime(i)==1)printf("%distheprimenumber!
\n",i);
}
return0;
}
intprime(intj){
intm,n;
m=(int)sqrt(j);
for(n=2;n<=m;n++)
{
if(j%n==0)
return0;}
return1;
}
请仿照来写.
P036最大公约数和最小公倍数.
#include<>main()
{
intm,n,c,d;
intgcd();intlcm();printf("Pleaseinputtwonumber:
\n");
scanf("%d%d",&m,&n);
c=gcd(m,n);y=x%y;x=temp;}
returny;}
intlcm(intx,inty)于号降序,大于号升序.
{temp=x;
x=y;
y=temp;
}
for(i=1;i<=y;i++){
if(!
((x*i)%y)){returnx*i;
}
}
}
最简单的C程序设计——顺序程序设计
P037把华氏温度转化为摄氏表示法.
#include<>
floatF_to_C(floatinput_fah){
floatoutput_cen;output_cen=9)*(input_fah-32);returnoutput_cen;}
floatC_to_F(floatinput_cen)
{
floatoutput_fah;
output_fah=5)*input_cen+32;returnoutput_fah;
}
intmain()
{
intchoice;
floatinput_fah,input_cen,output_fah,output_cen;printf("F_to_Cpress<1>andC_to_Fpress<2>!
\n");
scanf("%d",&choice);
if(choice==1)
{
printf("Pleaseinputfahrenheit:
");
scanf("%f",&input_fah);output_cen=F_to_C(input_fah);
printf("The华氏is%d,摄氏is%d.",(int)input_fah,(int)output_cen);
}
if(choice==2)
{
printf("Pleaseinputcentigrade:
");
scanf("%f",&input_cen);
output_fah=C_to_F(input_cen);
printf("TheCentigradeis%d,andtheFahrenheitis%d.",(int)input_cen,(int)output_fah);
}
return0;
}
P038计算存款利息(关于精度问题).
#include<>
intmain()
{
floatp0=1000,r1=,r2=,r3=,p1,p2,p3;
p1=p0*(1+r1);
p2=p0*(1+r2);
p3=p0*(1+r3/2)*(1+r3/2);
printf("p1=%f\np2=%f\np3=%f\n",p1,p2,p3);
return0;
}
P055大写转换成小写
#include<>
intmain()6个字母.
{
charc1,c2;
c1='A';
c2=c1+32;
printf("%c%d",c2,c2);
return0;
}
P059给出三角形边长,算出面积.
#include<>
#include<>
intmain()
{
doublea=,b=,c=,s,area;
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("areais%f\n",area);return0;
}
P065求一无二次等式的根,默认两个不同根.
#include<>
#include<>
intmain()
{
doublea,b,c,disc,x1,x2,p,q;
scanf("%lf%lf%lf",&a,&b,&c);
disc=b*b-4*a*c;
p=-b/*a);
q=sqrt(disc)/*a);
x1=p+q;
x2=p-q;
printf("x1=%\nx2=%",x1,x2);
return0;
}
P071用%f输出实数,只能得到六位小数.
#include<>
#include<>
intmain()
{
doublea=;以是float.
printf("%.9f\n",a/3);
return0;
}
P072float型数据的有效位数.
#include<>
#include<>
intmain()
{
floata;33252,float精度6位,所以第七位后不可信.
a=10000/;
printf("%f\n",a);
return0;
}
P078使用putchar函数输出.
#include<>
#include<>
intmain()
{
chara='B',b='O',c='Y';
putchar(a);
putchar(b);
putchar(c);
putchar('\n');
putchar(101);putchar(66);
return0;
}
P079使用getchar得到字符.
#include<>
#include<>
intmain()
{
chara,b,c;
a=getchar();
b=getchar();
c=getchar();
putchar(a);
putchar(b);
putchar(c);putchar('\n');
return0;
}
P081getchar得到大写,putchar输出小写.
#include<>
#include<>
intmain()
{
chara,b;
a=getchar();
b=a+32;
putchar(b);
putchar('\n');
return0;
}
P082国民生产总值10年后的增长倍数.
#include<>
#include<>
intmain()
{
doublep,r=,n=10;
p=pow((1+r),n);printf("Pis%lfwhen10yearslater.\n",p);
return0;}
P082求各种存款的利息数.
#include<>
#include<>
intmain()
{
doublep,r,n;p=1000*(1+5*;
printf("5yearsis%lf!
\n",p);f输出的是double型.
p=(1000*(1+2*);
p=(p*(1+3*);
printf("5yearsis%lf!
\n",p);p=(1000*(1+3*);
p=(p*(1+2*);
printf("5yearsis%lf!
\n",p);明,是一样的.
p=1000*pow((1+,5);
printf("5yearsis%lf!
\n",p);p=1000*pow((1+4),4*5);
printf("5yearsis%lf!
\n",p);#include<>
#include<>
intmain()
{
doublem,r=,d=300000,p=6000;
m=(log10(p/(p-d*r)))/(log10(1+r));
printf("%.1lf",m);lf.
return0;
}
P084字母密码转换,调用函数及临界处理.
#include<>
charprintcode(charf)
{
if(((int)f>86&&(int)f<91)||((int)f>118&&(int)f<123))
{
return(f-26+4);}
else
{
return(f+4);
}
}
intmain()
{
chara,b,c,d,e;
printf("Pleaseinput:
\n");
a=getchar();
b=getchar();
c=getchar();
d=getchar();
e=getchar();printf("%c%c%c%c%c",printcode(a),printcode(b),printcode(c),printcode(d),printcode(e));
putchar(putcharcode(a));
putchar(putcharcode(b));
putchar(putcharcode(c));
putchar(putcharcode(d));
putchar(putcharcode(e));
return0;lf来实现,因为没有要求实部,所以格式中m不写.
以转换,但要在某此条件下,例如输出和读入时,%c是字母,而%d是数值,看着办.
}
选择结构程序设计
P086一无二次方程求根的二分支.
#include<>
#include<>
intmain()
{
doublea,b,c,disc,x1,x2,p,q;
scanf("%lf%lf%lf",&a,&b,&c);
disc=b*b-4*a*c;
if(disc<0)printf("Thisequationhasn'trealroots\n");
else
{
p=-b/*a);
q=sqrt(disc)/*a);
x1=p+q;
x2=p-q;
printf("x1=%\nx2=%",x1,x2);
}
return0;
}
P087二个数按大小输出.
#include<>
intmain(){
floata,b,t;
scanf("%f%f",&a,&b);如有个逗号.
if(a>b)
{
t=a;
a=b;
b=t;
}
printf("%,%\n",a,b);
return0;
}
P088三个数按大小输出.
#include<>
intmain(){
floata,b,c,t;
scanf("%f%f%f",&a,&b,&c);
if(a>b){
t=a;
a=b;
b=t;
}
if(a>c){
t=a;
a=c;
c=t;
}
if(b>c){
t=b;
b=c;
c=t;
}
printf("%,%%\n",a,b,c);
return0;
}
P099判断输入字符,并最终按小写输出.
#include<>
intmain()
{
charch;
scanf("%c",&ch);
ch=(ch>='A'&&ch<='Z')?
(ch+32):
ch;printf("%c\n",ch);
return0;
}
P100按要求输出相应的Y值.
#include<>
intmain()
{
intx,y;
scanf("%d",&x);
if(x>=0)
{
if(x>0){
y=1;
}
else
{
y=0;
}
}
else{
y=-1;
}
printf("x=%d,y=%d",x,y);
return0;
}
P102switch的简单应用.
#include<>
intmain()
{
chargrade;
scanf("%c",&grade);
printf("Yourscore:
");
switch(grade)
{
case'a':
printf("85-100\n");break;case'b':
printf("70-84\n");break;
case'c':
printf("60-69\n");break;
case'd':
printf("<60\n");break;
default:
printf("Enterdataerror!
\n");
}
return0;
}
P104按输入执行操作,并且不分大小写.
#include<>
voidaction1(intx,inty)
{
printf("x+y=%d\n",x+y);
}
voidaction2(intx,inty)
{
printf("x*y=%d\n",x*y);
}
intmain()
{
charch;
int