1.做出来的有点小问题,应该在按完f5之后直接弹出“请输入字符串:”,然而我这个只有输入了字符串之后才会显示
#include <stdio.h> #include <string.h> void sym() { char a[50]; int length,x=0; printf("请输入字符串(个数<=50):"); scanf("%s",a); length=strlen(a); int i; for(i=1;i<=length/2;i++) { if(a[i]!=a[length-i-1]) x++; } if(x==0) printf("你输入的字符串是对称的!"); else printf("你输入的字符串是不对称!"); } int main() { sym(); return 0; }
2.冒泡排序
#include <stdio.h> #include <string.h> void str() { char a[50]; int length,j,i,temp; printf("请输入数字(个数<=50):"); scanf("%s",a); length=strlen(a); for(j=0;j<length;j++) { for(i=length-1;i>0;i--) { if(a[i]<a[i-1]) { temp=a[i]; a[i]=a[i-1]; a[i-1]=temp; } } } printf("按升序排列后:"); for(i=0;i<length;i++) printf("%c",a[i]); } int main() { str(); return 0; }
3.选择排序
#include <stdio.h> #include <string.h> void sel() { char a[50]; int length,i,j,temp,min; printf("请输入一串字符串:(字数<+50)"); scanf("%s",a); length=strlen(a); for(i=0;i<=length;i++) { min=i; for(j=min+1;j<length;j++) { if(a[j]<a[min]) min=j; } temp=a[i]; a[i]=a[min]; a[min]=temp; } printf("按升序排列后:"); for(j=0;j<=length;j++) printf("%c",a[j]); } int main() { sel(); return 0; }
4.上课的时候没听懂。。。。
时间: 2024-12-28 01:41:06