目前主要分为三个专栏,后续还会添加:
专栏如下: C语言刷题解析 C语言系列文章 我的成长经历
感谢阅读!
初来乍到,如有错误请指出,感谢!
描述
输入10个整数,要求按输入时的逆序把这10个数打印出来。逆序输出,就是按照输入相反的顺序打印这10个数。
输入描述:
一行,输入10个整数(范围-231~231-1),用空格分隔。
输出描述:
一行,逆序输出输入的10个整数,用空格分隔。
思路:
使用数组的方法将用户输入的数字存起来
然后使用数组将它打印出来 自减的方式
代码 1 :
/*
思路 使用数组的方法将用户输入的数字存起来
然后使用数组将它打印出来 自减的方式
*/
# include <stdio.h>
int main ()
{
int arr[10] = {0};//初始化数组
int i = 0;
for(i = 0; i < 10; i++)
{
scanf("%d",&arr[i]);//用户输入十个数字
}
for(int j = 9; j>=0;j--)//自减的方式来让程序打印
{
printf("%d ",arr[j]);
}
return 0;
}
代码 2 :
简单粗暴
#include <stdio.h>
int main()
{
int a, b, c, d, e, f, g, h, i, j;
scanf("%d %d %d %d %d %d %d %d %d %d",&a,&b,&c,&d,&e,&f,&g,&h,&i,&j);
printf("%d %d %d %d %d %d %d %d %d %d", j, i, h, g, f, e, d, c, b, a);
}
代码 3 :
#include<stdio.h>
void Reverse(int arr[],int sz){
int l=0; //左下标,从0开始
int r=sz-1; //右下标,从数组最后一项开始
while(l<r){ //交换数字,直到左下标大于右下标
int tmp=0;
tmp=arr[l];
arr[l]=arr[r];
arr[r]=tmp;
l++;
r--;
}
}
int main(){
int arr[10]={0};
for(int i=0;i<10;i++){
scanf("%d ",&arr[i]);
}
int sz=sizeof(arr)/sizeof(arr[0]);
Reverse(arr,sz); //逆序
for(int i=0;i<10;i++){
printf("%d ",arr[i]);
}
}