《明解C语言》第4章程序的循环控制练习题答案
【个人观点】
练习4-1
#include
#include
int main(void)
{
int num;
int dig;
do
{
printf("请输入一个非负整数:");
scanf("%d",&num);
if(num < 0)
puts("\a\a请不要输入负整数");
}while (num < 0);
printf("%d的逆向显示的结果是",num);
do
{
printf("%d",num % 10);
num /= 10;
} while(num > 0);
puts("。");
return (0);
}
【注】这样更能很好地理解num的变化
练习4-2
#include
#include
int main(void)
{
int num;
int dig;
int temp;
do
{
printf("请输入一个非负整数:");
scanf("%d",&num);
if(num < 0)
puts("\a\a请不要输入负整数");
}while (num < 0);
temp = num;
dig = 0;
do
{
num = num / 10;
dig = dig + 1;
} while(num > 0);
printf("%d的位数是%d.\n",temp,dig);
return (0);
}
练习4-3
#include
#include
int main(void)
{
int min,max,A,B,temp1,temp2;
int sum = 0;
printf("请输入两个整数:\n");
scanf("%d%d",&A,&B);
A < B?(min = A,max = B):(min = B,max = A);
temp1 = min;
temp2 = max;
do
{
sum = sum + min;
min++;
c语言程序分析题及答案
}while (min <= max);
printf("大于等于%d小于等于%d的所有整数的和是%d.\n",temp1,temp2,sum);
puts("\n");
return (0);
}
练习4-4
#include
#include
int main(void)
{
int num;
int dig;
do
{
printf("请输入一个非负整数:");
scanf("%d",&num);
if(num < 0)
puts("\a\a请不要输入负整数");
}while (num < 0);
printf("该整数逆向显示的结果是");
do
{
printf("%d",num % 10);
num /= 10;
} while(num > 0);
puts("。");
return (0);
}
练习4-5
#include
#include
int main(void)
{
int num;
int dig;
do
{
printf("请输入一个非负整数:");
scanf("%d",&num);
if(num < 0)
puts("\a\a请不要输入负整数");
}while (num < 0);
dig = 0;
do
{
num /= 10;
dig++;
} while(num > 0);
printf("该整数的位数是%d.\n",dig);
return (0);
}
练习4-6
#include
#include
int main(void)
{
int no;
printf("请输入一个整数:");
scanf("%d",&no);
while(no < 0)
{
printf("输入错误!");
exit(0);
}
while (no >= 0)
{
printf("%d ",no);
no--;
}
putchar('\n');
}
练习4-7
#include
int main(void)
{
int no;
printf("请输入一个正整数:");
scanf("%d",&no);
while(no > 0)
printf("%d ",no--);
putchar('\n');
return (0);
}
练习4-8
#include
#include

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。