排序规则,解密qq号,首先将第一个数删除,紧接着将第二个数放在末尾,将第3个数删除,将第4个数放末尾以此类推,按照刚才删除顺序,将数输出
#include<stdio.h> int main() { int q[102]={6,3,1,7,5,8,9,2,4}; { int head=0; int tail=9; while(head<tail) { printf("%d",q[head]); head++; q[tail]=q[head]; tail++; head++; } } } 这题就是这样,简单吗?
结构体写法 #include<stdio.h> struct queue { int data[100]; int head; int tail; }; #include<stdio.h> struct queue { int data[100]; int head; int tail; }; int main() { struct queue q; int i; q.head=0; q.tail=0; for(i=0;i<9;i++) { scanf("%d",&q.data[q.tail]); q.tail++; } while(q.head<q.tail) { printf("%d ",q.data[q.head]); q.head++; q.data[q.tail]=q.data[q.head]; q.tail++; q.head++; } return 0; }