#C: 输入10个整数 将输入的整数倒序输出 比如:输入:123 输出:321

我这个输出了四次,自己把后面的三次注释掉就是老师留的课后作业呦。

void test01()
{
    int arr[10]={0};
    int n=sizeof(arr)/sizeof(arr[0]);
    printf("请输入%d个整数:", n);
    int i=0;
    for (i=0;i<n;i++)
    {
    scanf("%d",&arr[i]);
    printf("%d ", arr[i]);
    }
    printf("\n");
    int j=0;
    for(i=0,j=n-1;i<j;i++,j--)
    {
    int tmp=arr[i];
        arr[i]=arr[j];
        arr[j]=tmp;
        //printf("i=%d j=%d ", i,j);
    }
    //这之上已经有换好位置的一个数组arr[],后续只需要把这个数组上的元素下标(0~n-1)用同一个变量等价好就可以打印出来。
    //重新用for循环,定义数组的元素下标(i或者j-->0~n-1) 去获取数组上的数据,再输出,就是键盘输入的倒序。
    for(i=0;i<n;i++)
    {
    printf("%d ", arr[i]);
    }
    printf("\n");
    //由此可以表明,倒序后的数组的确存在,无论用i or j都可以当作数组的元素下标。
    for(j=0;j<n;j++)
    {
    printf("%d ", arr[j]);
    }
    printf("\n");
    //倒序之后从j开始输出,顺序跟原来一样。
    for(j=n-1;j>=0;j--)
    {
    printf("%d ", arr[j]);
    }
    printf("\n");
}

  • 6
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用字符串的反转函,将输入整数先转换成字符串,再将字符串反转,最后再将反转后的字符串转换成整数即可。 具体实现如下: ```python num = int(input("请输入一个非负整数:")) num_str = str(num) reverse_str = num_str[::-1] reverse_num = int(reverse_str) print(reverse_num) ``` 其中,`[::-1]`表示字符串反转的操作。 ### 回答2: 这道题目可以用学上的方法解决。 首先,我们需要明确什么是倒序。倒序就是将一个所有的字倒序排列后得到的。例如,123的倒序就是321。 对于一个非负整数,我们可以将其每一位的字一个一个地取出来,然后将它们组成一个新的,就可以得到这个的倒序。 具体来说,可以用以下步骤来实现: 1. 用%10取出这个的最后一位字,例如123的最后一位字是3。 2. 将得到的最后一位字作为新的最高位,将它加到新上去。 3. 用/10将这个的最后一位字去掉,例如123去掉最后一位字3后剩下的字是12。 4. 如果这个还有字,重复步骤1-3,直到这个的所有字都取出来为止。 5. 得到的新就是原的倒序。 例如,对于123,我们可以用如下步骤来得到它的倒序: 1. 取出最后一位字3。 2. 将3加到新上得到3。 3. 原变成12。 4. 取出最后一位字2。 5. 将2加到新上得到32。 6. 原变成1。 7. 取出最后一位字1。 8. 将1加到新上得到321。 9. 原变成0,结束循环。 因此,123的倒序就是321。 综上所述,计算一个的倒序可以用求模和整除的方法,将每一位字一个一个地取出来,然后用这些字构造新的。 ### 回答3: 这个问题可以用字符串的方法去解决,我们可以把输入的非负整数转化成字符串,再把字符串反转,最后转化回输出就行了。 具体的步骤如下: 1. 定义一个变量存储输入的非负整数。 2. 把这个非负整数转换成字符串。可以用 str() 函来实现。 ```python num = 123 num_str = str(num) # 把非负整数转换成字符串 ``` 3. 把字符串反转。可以用字符串切片来实现。 ```python num_str_reversed = num_str[::-1] # 把字符串反转 ``` 4. 把反转后的字符串转换成字。可以用 int() 函来实现。 ```python num_reversed = int(num_str_reversed) # 把反转后的字符串转换成字 ``` 5. 输出倒序后的字。 ```python print(num_reversed) # 输出倒序后的字 ``` 完整代码如下: ```python num = 123 num_str = str(num) num_str_reversed = num_str[::-1] num_reversed = int(num_str_reversed) print(num_reversed) ``` 输出结果为: ``` 321 ``` 以上就是解决这个问题的具体方法和步骤了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值