1.编写一程序,输入整数a和b,若a2+b2大于100,则输出a+b的值,否则输出a-b的值。答:# include
void main( )
{ int a, b;
scanf (“%d,%d”,&a,&b);
if (a*a+b*b>100)
printf (“%d\n”,a+b);
else
printf (“%d\n”,a-b);
}
2.编写一程序,输入整数n,如果n既是5又是7的整数倍,则输出yes,否则输出no。
答:# include
void main( )
{ int n;
scanf ( “%d”,&n);
if (n%5==0&&n%7==0)
printf (”yes\n”);
else
printf (“no\n”);
}
3.编写一程序,输入3 个整数,要求按由小到大的顺序输出。
答:# include
void main( )
{ int a,b,c,t;
scanf (“%d,%d,%d”,&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=n;n=t };
printf(“%d%d%d\n”,a,b,c,);
}
4.某商场为促销实行打折销售商品,具体办法是假定购买购买某种种商品的件数为x件,其折扣率如下:商品数量折扣率
x<5 0
5≤x<10 1%
10≤x<21 2%
21≤x<30 4%
30≤x 6%
假定商品价格为p元,编程计算某客户购买x件商品应付金额。计算公式:sum=p*x*(1-d)
其中,sum为应付金额,d为折扣率,用if-else-if语句实现。
答:# include
void main( )
{ int x;
float p, d, sum;
scanf (“%d,%f”,&x,&p):
if (x<5)
d=0.0;
else if (x<10)
d=0.01;
else if (x<21)
d=0.02;
else if (x<30)
d=0.04;
else
d=0.06;
sum p*x*(1-d.);
printf (“%.2f\n”,sum);
}
5.编写一程序,在屏幕上显示一张如下所示的时间表:
* * * * Time * * * * *
1 moring
2 afternonn
3 night
Please input your choice :
答:# include
void main ( )
{ int n;
printf (“* * * * * Time * * * * *\n”);
printf (“1 moring\n”);
printf (“2 afternoon\n”);
printf (“3 night\n”);
printf (“Please input your choice\n”);
switch (n)
{ case 1: printf (“Good moring\n”);break;
case 2: printf (“Goog afternoon\n”);brean;
case 3: printf (“Goog night\n”);brean;
defult: printf (“Selection error!”);
}
}
6.编写一程序,输入两个实数和一个算术运算符(+,-,*,/),根据运算符执行相应的运算并输出运算结果。
答:# include
void main ( )
{ float f1, f2, result ;
char op;
scanf (“%f%f%c”,&f1,&f2,&op);
switch (op)
{ case …+?: result=f1+f2 ; break;
case ?-… : result=f1-f2 ; break;
case ?*?: result=f1*f2 ; break :
case ?/ :eslut=f1/f2 ; break ;
}
printf (“%f %c %f=%f\n”,f1,op,f2,result);
}
循环结构
1.编写一程序,生成以下形式的图案。
1
12
123
1234
12345
123456
1234567
答:#include
void main( )
{ int i,j,lines;
printf(“please input lines=”);
scanf(”%d”,&lines);
for(i=1;i<=lines;i++)
{ for(j=1;j<=i;j++)
printf(“%d”,j);
printf(“\n”);
}
}
2.编写一程序,打印所有水仙花数。水仙花数指导是一个3 位的正整数,它的三个数字的
立方和等于该数本身,例:153=13+53+33。
答: #include
void main( )
{ int i,j,k,n;
printf(“reslut is:”);
for(n=100;n<1000;n++);
{ i=n/100;
j=(n-i*100)/10;
k=n%10;
if(n==i*i*i+j*j*j+k*k*k)
printf(“%d”,n);
}
printf(“\n”);
}
3.Pi的近似值可用以下公式求得:约等于1/12+1/22+1/32+1/42+...+1/n2
若n取10000,则最后一项的值约为10-4,认为可达到精度要求。请编写程序求pi的近似值。答:#include
#include
void main()
{ float i=1.0,e=1.0;
float s=0;
while(e>0.0001)
{ s+=1/(i*i);
i++;
e=1/(i*i);
}
s=sqrt(s*6);
printf (“%.4f\n”,s);
}
4.编写一程序,接受两个整数num1和num2,找出这两个数之间所有奇数的和。
答:#include
void main( )
{ int a,b,temp,i,s=0;
printf(“please input 2 integer=”);
scanf(“%d%d”,&a,&b);
if(a>b)
temp=a,a=b,b=temp;
for(i=a;i<=b;i++)
if(i%2!=0)
{ s+=i;
i++;
}
else
{
s+=i+1;
i++;
}
printf(“the sum of odd between %d and %d is %d\n”,a,b,s);
}
第五章
7.编写一程序,输出以下图案:
*
* * *
* * * * *
* * * * * * *
* * * * *
* * *
*
答:#include
void main()
{
int a,b,c;
for(a=1;a<=4;a++)
{
for(b=1;b<=4-a;b++)
printf(“”);
for(c=2;c<=2*a;c++)
printf(“*”);
printf(“\n”);
}
for(a=1;a<=3;a++)
{
for(b=1;b<=a;b++)
printf(“”);
for(c=2;c<=8-2*a;c++)
printf(“*”);
printf(“\n”);
}}
5.11编程输出100以内的素数
答:#include
void main()
{
int n,i;
for(n=2;n<=100;n++)
{