循环 习题答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1:/*编写程序,实现从键盘输入学生的平时成绩、期中成绩、期末成绩,计算学生的学期总成绩。学生的学期总成绩=平时成绩*15%+期中成绩*25%+期末成绩*60%。*/
#include<>
void main ()
{
float a,b,c,sum;
printf("输入同学的成绩\n");
scanf("%f,%f,%f",&a,&b,&c);
sum=a*+b*+c*;
printf("同学的总成绩是%4.2f",sum);
}
2:
/*编写程序,输入一个数,判断该数是奇数还是偶数。*/
#include<>
void main ()
{
int a;
printf("输入个数:");
scanf("%d",&a);
if(a%2==0)
printf("是偶数!");
else
printf("是奇数!");
}
3:
/*编写程序,从键盘输入三个数,输出其中最小的数。*/
#include""
void main()
{
int min,a,b,c;
printf("请输入三个整数用逗号分开:");
scanf("%d,%d,%d",&a,&b,&c);
min=a;样的形式输入任意n 个数:");
do
{
scanf("%d%c",&a,&b);
count++;
if(flag);
printf("最小的数为第%d 个,值为%d",min_count,min);
}
10:
/*回文整数是指正读和反读相同的整数,编写一个程序,输入一个整数判断是否为回文整数*/
#include <>
void main ()
{
int i=0,num,fact;
printf("输入你想判断的数字\n");
scanf ("%d",&num);
fact=num;
while(0!= num)
{
i = i*10 + num%10;
num=num/10;
}
if (fact==i)
printf ("%d 是回文整数\n",fact);
else
printf ("%d 不是回文整数\n",fact);
}
11:
/*编写程序,找出所有三位的升序数。所谓升序数,是指其个位数大于十位数,且十位数又大于百位数的数。例如,279 就是一个三位升序数*/
#include <>
void main ()
{
int a=100,h,t,g;
do
{
h=a/100;
t=a/10%10;
g=a%10;
if (g>t&&t>h)
printf("%d\t",a);
a++;
}
while(a<=999);
12:
/*如果一个数的各因子之和正好等于该数本身,则该数称为完数。如6 的影子为1、2、3,其和为6,则 6 完数。编写程序,找出2~100 之间的所有完数。*/
#include <>
void main ()
{
int i,j,sum;
sum=0;
for(i=2;i<=100;i++)
{
for(j=1;j
{
if(i%j==0)
sum=j+sum;
}
if(sum==i)
{
printf("%d\t",i);
}
sum=0;
}
}
13:
/*输入n 值,打印下列高为n 的直角三角形。*
***
*****
*******
*/
#include <>
void main()
{
int n,i,j;
printf("输入高");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
for(j=1;j<=2*n-2*i;j++)
{
printf(" ");
}
for(j=1;j<=2*i-1;j++)
{
printf("*");
}
printf("\n");
}
}
14:
/*猴子吃桃问题。猴子第一天摘下若干桃子,当即吃了一半,又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半多一个。到第十天早上想再吃时,就只剩下一个桃子了。求一天一个摘了多少个桃子。*/
#include <>
void main()
{
int i,x;
i=1;
x=1;
do
{
x=(x+1)*2;
i++;
}
while(i<10);
printf("有%d 个桃子",x);
}
15:
/*已知大鱼5 元一条,中鱼3 元一条,小鱼1 元三条,现用100 元买100 条鱼,求能买大鱼、
中鱼、小鱼各多少条。*/
#include <>
void main ()
{
int i, j, k;
for(i=0; i<100; i++)
for(j=0; j<100; j++)
for(k=0; k<100; k++)
if(i*5+j*3+k/3==100&&k%3==0&&i+j+k==100) printf("%d, %d, %d \n", i, j, k);
}
1、用二分法求方程在区间[0,1]上的一个实根。
#include “”
#include “”
Void main()
{
float a1,b1,x, y, y1 ,y2 ;
a1=0; b1=1; //搜索区间