C语言:由键盘输入10个整数,倒序输出

作者&投稿:撒鸣 (若有异议请与网页底部的电邮联系)
c语言题:在键盘输入10个整数 逆序存放并输出~

比较简单的方法是创建一个数组
从下标为9开始递减进行输入至下标为0
这样存储就会是倒序的了
然后再从下标为0开始递增输出到下标为9

另一种方法是创建两个数组
比如a和b,先顺序地将10个数据存储在a里
然后通过一个循环来将数据逆序存储在数组b里
这样数组b里就是逆序存储的了
最后顺序输出数组b

当然还有一种方法
可以使用一个链表(或者数组也可以)
然后使用栈的方式存储数据
题目中要求数据的存放是逆序的
这其实要具体地看存储的方式了
以栈来说,栈是一种先进后出的数据结构
从这种层面上来看的话它存储的数据就是“逆序”的
但如果使用一个数组来实现的话存储在数组里的数据就可能是顺序的(不使用逆序有方式将数据存储在数组里)
一个简单的例子
#include #define PUSH(i) (*p=i,++p)#define POP(i) (--p,i=*p)int main(int argc,char **argv){ int a[10]; int i,r; int *p=a; for(i=0;i < 10;++i) { scanf("%d",&r); PUSH(r); } for(i=0;i < 10;++i) { POP(r); printf("%d ",r); } printf("
"); return 0;}该例子,如果从栈这种数据结构的方式来看
先输入的数据会被压入到栈底
最后的数据在栈顶,从栈顶到栈底来看的话
数据的存储就是逆序的
如果从数组下标来看的话就是顺序的
这里我们可以将指针反转过来
#include #define PUSH(i) (*p=i,--p)#define POP(i) (++p,i=*p)int main(int argc,char **argv){ int a[11]; int i,r; int *p=a+10; for(i=0;i < 10;++i) { scanf("%d",&r); PUSH(r); } for(i=0;i < 10;++i) { POP(r); printf("%d ",r); } printf("
",a[0]); return 0;}那么在数组的层面上来说也会是逆序的了

而以数组的顺序或逆序方式来说的话
使用链表的方式则已经没有相对明确的“顺序”或者“逆序”了
当然我们也可以使用逆序链表的方法业创建栈数据结构
由于栈数据结构的性质决定了这种数据存储的方式

通过循环即可实现该功能
1 顺序循环,输入10个数值;
2 逆序循环,输出10个数。
代码
int main(){ int i, a[10]; for(i = 0; i = 0; i --) printf("%d ",a[i]); return 0;}

思路:先输入10个数赋值给数组a,接着倒序输出该数组即可。

参考代码:

#include<stdio.h>
int main()
{
int i,a[10];
for(i=0; i<10; i++)//正序输入 
   scanf("%d", &a[i]);
for (i=9; i>=0; i--)//倒序输出 
printf("%d  ", a[i]);
    return 0;
}
/*
0 1 2 3 4 5 6 7 8 9
9  8  7  6  5  4  3  2  1  0
*/


#include <stdio.h> int main(){ int numbers[10]; int count; for(count=0;count<=9;count++) { printf("请输入第%d个数:", count); scanf("%d", &numbers[count]); } for(count=9;count>=0;count--) { printf("%d\n", numbers[count]); } return 0;}

#include <stdio.h>
#include <stdlib.h>
void main()
{
int i;
int n[10];
for (i=0; i<10; i++)
scanf("%d", &n[i]);
for (i=9; i>=0; i--)
printf("%d ", n[i]);
}

可以用数组,也可以用堆栈,还可以用链表。

最简单的保存到数组,倒着输入口来!


用c语言编写从键盘输入一个数,判断是否在数组a里(1~10的整数)
include <stdio.h> void main(void){ int a[10];int data=0;int i=0;for(i=0;i<10;i++)a[i]=i+1;scanf("%d",&data);for(i=0;i<10;i++){ if(data==a[i])printf("%d在数组里\\n",data);} if(i==10)printf("%d不在数组里\\n",data);} ...

C语言编程由键盘输入一个字符串,统计并输出该字符串中: 1)字母的个...
include<stdio.h> int main(){ char str[100],*p; int sum,sum2; sum=sum2=0; scanf("%s",str); for(p=str;*p!=0;p++) { if(*p>='a'&&*p<='z'||*p>='A'&&*p<='Z') sum++; else if(*p>='0'&&*p<='9') sum2++; } printf("the...

C语言 :从键盘输入一个整数,存入变量x中,根据变量x的值的范围,输出y的...
include<stdio.h>void main(){ int x, y; scanf("%d", &x); if( x >-5 && x<0) y =x; else if( x>=0 && x <5) y = x -1; else if( x>=5 && x <10) y = x + 1; printf("y=%d\\n", y);} ...

设计C语言程序,把由键盘输入的数列(如1,3,5,7,9)按相反的顺序(如9,7...
1 创建数组,保存数列。2 输入数列到数组。3 反序输出该数组。以输入5个数并反序为例:include <stdio.h>int main(){ int i,a[5]; for(i = 0; i < 5; i ++) { scanf("%d",a+i);\/\/输入5个数。 } for(i = 4; i >= 0; i --) printf("%d",a[...

用汇编语言编写:由键盘输入两个整数val1和val2,输出稍大于val1且是val...
楼主,你问的简单,“就编写一个这样的程序”,这个程序拿C语言编肯定非常简单,拿汇编可没那么容易啊。以下是程序,简单说明几点:1. 由于输入、输出的都是字符,所以用了两个函数。Atoi16是把输入的字符转为正整数,I16toa 是把整数转成字符串。2. 调用Atoi16时,要配好si和cl两个寄存器。si...

C语言问题,由键盘输入一个字母,输出其ASCII码值
这是简单的代码 #include"math.h" void main() { char ch; printf("input a small letter:"); do scanf("%d,&ch); while(!(ch>'a' && ch<'z')) ; \/*确保输入的是小写字母*\/ printf("%c %d %c %d",ch,ch,ch-32,ch-32); \/*按要求输出*\/ }你可以随便转换大小写 希望...

c语言 计算由1加到n,由键盘输入一个数字,可以求的1到这个数字的和.
include <stdio.h> include <stdlib.h> int main(){ int i,n,sum=0;scanf("%d",&n);\/\/要输入的数 for(i=1;i<=n;i++)sum+=i;printf("%d",sum);system("PAUSE");return 0;}

用汇编语言编写:由键盘输入两个整数val1和val2,输出稍大于val1且是val...
9 INT 21H POP AX CALL DISPAXS MOV AH,4CH INT 21H ;===; 键盘输入数值数组子程序(数组名为array,元素个数存放在num中) INPUTNUM PROC NEAR ; 输入的数据以一个空格分隔,以回车符结束输入 LEA DI,ARRAY ...

用汇编语言编写:由键盘输入两个整数val1和val2,输出稍大于val1且是val...
===; 键盘输入数值数组子程序(数组名为array,元素个数存放在num中) INPUTNUM PROC NEAR ; 输入的数据以一个空格分隔,以回车符结束输入 LEA DI,ARRAY ;将数组第一个元素的有效地址置入DI MOV WORD PTR[NUM],0 STIN: MOV AX,0 PUSH AX AGAIN1...

用汇编语言编写:由键盘输入两个整数val1和val2,输出稍大于val1且是val...
===; 键盘输入数值数组子程序(数组名为array,元素个数存放在num中) INPUTNUM PROC NEAR ; 输入的数据以一个空格分隔,以回车符结束输入 LEA DI,ARRAY ;将数组第一个元素的有效地址置入DI MOV WORD PTR[NUM],0 STIN: MOV AX,0 PUSH AX AGAIN1...

鄂托克前旗19761775841: C语言:由键盘输入10个整数,倒序输出 -
兆昆柴岩清: 思路:先输入10个数赋值给数组a,接着倒序输出该数组即可. 参考代码: #include<stdio.h> int main() {int i,a[10];for(i=0; i<10; i++)//正序输入scanf("%d", &a[i]);for (i=9; i>=0; i--)//倒序输出printf("%d ", a[i]);return 0; } /* 0 1 2 3 4 5 6 7 8 9 9 8 7 6 5 4 3 2 1 0 */

鄂托克前旗19761775841: c 编写程序从键盘输入10个整数,要求反序输出 -
兆昆柴岩清: 1 代码如下#include<stdio.h>#define N 10 int main(){ int arr[N]; puts("从键盘输入10个整数,以空格为间隔,按回车终止输入:"); for (int i = 0; i < N; i++){ scanf("%d", &arr[i]); } puts("反序输出为:"); for (int i = N - 1; i >= 0; i--) printf("%d ", arr[i]); puts(""); getchar(); getchar(); return 0; }2 运行结果 希望对你有帮助~

鄂托克前旗19761775841: 输入10个整数,将其倒序输出.(C语言题目) -
兆昆柴岩清: #include<stdio.h> void main() { int a[10]; for(int i = 0; i < 10; i++) scanf("%d", &a[i]); for(int i = 9; i>= 0; i--) printf("%d", a[i]); }

鄂托克前旗19761775841: c语言程序键盘里输10个数逆着输出 -
兆昆柴岩清: 展开全部#include void main() { int a[10],i; printf_s("请输入十个整数: "); for(i=0;i<=9;i++) scanf("%d",&a[i]); printf("\n"); for(i=9;i>=0;i--) printf("%d ",a[i]); } 执行示例:

鄂托克前旗19761775841: C语言编程,输入10个整数,分别按顺序和逆序输出 -
兆昆柴岩清: C语言通过输入十个整数然后分别顺序和逆序输出的编程思想和方法如下: 1.首先需要定义一个整型数组用于存储输入的10个整数.这里定义一个数组a. 2.然后利用for循环,接受从键盘输入的10个整数.这里使用i作为循环的游标变量. 3.输入完毕后,再次利用for循环来顺序输出存储在数组的十个数.这里同样使用局部变量i作为循环的游标. 4.接着,再次使用for循环来逆序输出存储在数组的十个整数.同样地,这里仍然需要一个局部变量作为循环游标.(方法与顺序输出大致相同) 5.代码编写完成后,点击运行程序,在调试程序的窗口即可看到最终的运行结果.

鄂托克前旗19761775841: c语言高手帮忙:从键盘输入10个整数.用选择法或冒泡法将它们从小到大的顺序排序,并以此顺序输出. -
兆昆柴岩清: #include main() {int s[10],t,i,j,x;printf("input 10 numbers:\n");for(t=0;t<10;t++)scanf("%d",&s[t]);for(i=0;i<9;i++)for(j=0;j<9-i;j++)if(s[j]>s[j+1]){t=s[j];s[j]=s[j+1];s[j+1]=t;}printf("the result is:\n ");for(j=0;j<10;j++)printf("%d",s[j]); printf("\n"); }

鄂托克前旗19761775841: C语言:输入十个整数存入数组,编写一个函数实现将该10个数倒序存储,要求使用指针法
兆昆柴岩清: #include #define N 10 void reverse(int *a,int n) { int i,k,*p,*q; for ( i=0,p=a,q=a+n-1;i

鄂托克前旗19761775841: C语言从键盘上输入任意10个整数,用交换法进行排序,并显示排序结果. -
兆昆柴岩清: #include #define N 10 void main() {void swap_sort(int *a,int n);int a[N];int i,j,temp;for(i=0;i<10;i++){scanf("%d",&a[i]);}printf("排序前数组序列:\n");for(i=0;i {printf("%5d",a[i]);} printf("\n 排序前数组序列:\n");for(i=0;i{for ...

鄂托克前旗19761775841: c语言编辑器中输入多个整数,怎么将他们倒序输出? -
兆昆柴岩清: 用递归实现:#include<stdio.h> int fun (int n) {if(n!=0){printf("%d ",n%10);fun(n/10);} } main() {long n;scanf("%ld",&n);fun(n); } ②可以把你要的数字写数组,倒着输出下标就好了.

鄂托克前旗19761775841: C语言 写程序,数组10个元素从键盘输入后,完成逆序存放,输出结果. -
兆昆柴岩清: #include <stdio.h>#define N 10void main(){ int a[N],i,temp; printf("请输入%d个整数:\n",N); for(i=0;i<N;i++) scanf("%d",&a[i]); printf("输入的数字是:\n"); for(i=0;i<N;i++) printf("%3d",a[i]); printf("\n"); for(i=0;i<N/2;i++...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网