练习4-1
/*---改写判断整数型符号的程序,使其可以重复输入和输出---*/
#include <stdio.h>
int main(void)
{
int a, retry;
do {
printf("请输入一个数:"); scanf("%d",&a);
if(a == 0) puts("该整数为0");
if(a > 0) puts("该整数为正数");
if(a < 0) puts("该整数为负数");
printf("请问是否继续---Y/1---N/0:"); scanf("%d",&retry);
} while(retry == 1);
puts("谢谢使用!");
return 0;
}
练习4-2
/*---输入两个数,计算出它们之间所有的整数的和---*/
#include <stdio.h>
int main(void)
{
int a, b, sum=0, min, max;
puts("请输入两个整数。");
printf("整数a:"); scanf("%d",&a);
printf("整数b:"); scanf("%d",&b);
(a>b)?(max = a)&&(min = b):(min = a)&&(max = b);
do {
sum+=min;
} while(min++ != max);
(a>b)?(max = a)&&(min = b):(min = a)&&(max = b);
printf("大于等于%d小于等于%d的所有整数的和是%d",min,max,sum);
return 0;
}
练习4-3
/*---输入值为负数时不执行换行操作---*/
#include <stdio.h>
int main(void)
{
int no;
printf("请输入一个正整数:");
scanf("%d",&no);
while(no >= 0) {
printf("%d ", no);
no--;
}
while(no >= 0)
printf("\n");
return 0;
}
练习4-4
/*---当输入数值递减到1时停止---*/
#include <stdio.h>
int main(void)
{
int a;
printf("请输入一个整数:");
scanf("%d",&a);
while(a > 0)
printf("%d ",a--);
printf("\n");
return 0;
}
练习4-5
/*---从1开始递增,输入的值小于0不换行---*/
#include <stdio.h>
int main(void)
{
int i, no;
printf("请输入一个正整数:");
scanf("%d", &no);
i = 1;
while(i <= no)
printf("%d ", i++);
if(no >= 0) putchar('\n');
return 0;
}
练习4-6
/*---升序显示出小于输入值的所有正偶数---*/
#include <stdio.h>
int main(void)
{
int a, b=2;
printf("请输入一个整数:");
scanf("%d",&a);
do{
printf("%d ",b);
b+=2;
} while(b < a