c语言经典题目3(多种参考答案).doc输入一行文字,将其中的每个字符按ASCII码从小到大的 顺序排序后输出。
〃第一题解法一
void main()
(
char string [100];
char temp;
int i,j,n;
printf(nPlease input the string:1');
gets(string);
n=strlen(string);
for(i=0;i<n-1 ;i++)
for(j=i+1 ;j <n ;j++)
if(string [i] > string [j ])
{
temp=string[i];
string [i]=string[j];
string [j]=temp;
}
puts(string);
〃第一题解法二
void main()
char string [100];
int tmp[256]={0};
int i,j;
printf(nPlease input the string:1');
gets(string);
for(i=0; string [i] !='\0';i++)
(
tmp[string[i]]++;
}
for(i=0;iv256;i++)
for(j=0 ;j <tmp [i];j++) printf(n%cn,i);
输入一个字符串,统计各字母出现的次数,并按字母出 现的多少输出,次数多的先输出。
〃第二题解法一
void main()
{
char a[52]=
('aVbVcVdVeVf;gVhViVjVk',T,'m','nVoVpVqVrVsVtVu',' vVwVxVy','z','AVBVCVDVEVF,'GVH',T,T,'K','LVMV NVO','PVQ','RVS','TVUVVVWVXVYVZ'};
char b[100],w;
int t[52]={0},i,n,j,m;
printf (Enter the string:");
gets(b);
n=strlen(b);
for(i=0;i<n;i++)
{
for(j=0;j<52;j++)
{
if(b[i]=a[j])t[j]+=l;
for(i=0;i<52;i++)
for(j=0;j<52-i;j++)
if(tU]>t[j+l])
(
tU]=t[j+i];
t[j+l]=m;
w=a[j];
a[j]=a[j+l];
a[j+l]=w;
for(i=0;iv52;i++)
if(t[i]!=O)
printf("%c=%d\t",a[i],t[i]);
〃第二题解法二
void main()
int a[2] [26],i,n,k,temp l,temp2,j;
char str[100],s;
for(i=0;i<26;i++)
(
a[0][i]=0;
a[l][i]=i;
}
gets(str);
n=strlen(str);
for(i=0;i<n;i++)
k=str[i]-'a';
if(k>=0&&kv=26)
a[0][
c语言经典题目3(多种参考答案) 来自淘豆网www.taodocs.com转载请标明出处.