任意输入一个三位正整数,十位上的数字不动,将个位和百位上的数字交换,构成一个 新的正整数后输出。(例如:523变为325)
任意输入一个三位正整数,十位上的数字不动,将个位和百位上的数字交换,构成一个 新的正整数后输出。(例如:523变为325)
【正确答案】:#includevoid main(){   int num,down,a,b,c;    scanf("%d",&num);    if(num<100||num>999)  printf("Input Error!\n");    else    {   a=num%10;        b=num/10%10;        c=num/100;        down=100*a+10*b+c;        printf("num=%d,down=%d\n",num,down);    }}
【题目解析】:因为题干中给出是输入一个三位正整数,即要用if-else语句进行判断,在不符合条件的数值输入时要报错,输入正确的要执行个位和百位上的数字交换。#include void main() {     int num,down,a,b,c;       scanf("%d",&num); /*从键盘上输入一个数据*/      if(num<100||num>999) printf("Input Error!\n"); /*在if语句中判断,如果不是一个三位正整数,提示Input Error!,输入正确执行else语句*/      else       {      a=num%10; /*计算个位上的数字*/             b=num/10%10; /*计算十位上的数字*/             c=num/100; /*计算百位上的数字*/             down=100*a+10*b+c; /*个位和百位上的数字交换之后的新的正整数*/             printf("num=%d,down=%d\n",num,down);         } }
Top