#include<stdio.h>void main(){ int i=0,t,j; char str[40]; printf("input the string:\n"); gets(str); for(i=0;str[i]!='\0'||str[i+1]!='\0';i=i+2) { for(j=0;str[j]!='\0'||str[j+1]!='\0';j=j+2) if(str[i]>str[j+2]) { t=str[j]; str[i]=str[j+2]; str[j+2]=t; } } puts(str);}刚学C语言,不知道哪里错了。请指教,最好说明一下为什么执行不了。谢谢
#include<stdio.h>#include<stdlib.h>main(){ int i=0,j; char t,str[40];//设定为字符变量 printf("input the string:\n"); gets(str); for(i=0;str[i]!='\0'||str[i+1]!='\0';i=i+2) { for(j=i+2;str[j]!='\0'||str[j+1]!='\0';j=j+2)//从下一个字符开始 if(str[i]>str[j]) { t=str[j]; str[j]=str[i]; str[i]=t;//基本转换格式 } } puts(str); system("pause");}