1、C语言数组循环后移4次
int a[9]={1,2,3,4,5,6,7,8,9},i,j,k,tmp;
void main(){
for (i = 0; i < 4; i++) {
tmp=a[0];
for (j = 0; j < 8; j++) {
a[j] = a[j+1];
}
a[8] = tmp;
for (j = 0; j < 9; j++) {
printf("%d ", a[j]);
}
}
2、输入字符串中数字后移
#include <stdio.h>
#include <string.h>
#define N 80
void main() {
int i=0, j=0, k=0;
char c, str2[N], str3[N];
while ((c = getchar()) != ' ') {
if (c <= '9'&&c >= '0') {
str2[j] = c;
j++;
}
else
{
str3[k] = c;
k++;
}
}
strcat(str3, str2);
getchar();
}
strcat(str3, str2);将str3,str2连接输出。
或者以下方法输出:
for(i=0;i<=N;i++){
printf("%c",str2[i]);
}
也可以直接用str[]得到字符串循环比较单个字符:
char str1[N], str2[N], str3[N];
gets[str1];
while (str1[i]= ' ') {
if (str1[i] <= '9'&&str1[i] >= '0') {
str2[j] = str1[i];
j++;
}
else
{
str3[k] = str1[i];
k++;
}
i++;
}
strcat(str3, str2);
getchar();
}