急求,哪位高手能给小弟我找出小弟我编的c错在那了。先多谢了
急求,谁能给我找出我编的c错在那了。先谢谢了
以下是我编写的一个程序。目的是把a到z的26个字母先让他们返回1到26个数字,然后经过以下运算:
b k o w
2 11 15 23
\ /\ /\/\/
3 2 7 5
\/ \/ \/
5 9 2
\/ \/
4 1
能看的懂吗?以下是我编写的程序,但怎么也运算不对。请高手指教:
#include <stdio.h>
main()
{
char a[20],*b,*p,*q;
printf( "Please enter your name :\n ");
gets(a);
number(a);
puts(a);
if(a[0]!= '\0 ')
do
{
for(n=0,p=a,q=p+1;*q!= '\0 ';n++,p++,q++)
if((*p+*q- '0 ')> '9 ') *p=*p+*q- '0 '-10;
else *p=*p+*q- '0 ';
*p= '\0 ';
printf( "your probability are: %s%\n ",a);
}
number(char a[20])
{ char *p,*q,b[20];
int i;
p=a;q=b;
for(;*p!= '\0 ';p++,q++)
{ if( 'j '> *p && *p> = 'a ')
*q=*p-48;
else if( 't '> *p && *p> = 'j ')
{ *q=49;
q++;
*q=*p-58;
}
else{ *q=50;
q++;
*q=*p-68;
}
}
for(i=0;b[i]!= '\0 ';i++)
a[i]=b[i];
return(a[20]);
}
------解决方案--------------------
#include <stdio.h>
main()
{
char a[20];
printf( "Please enter your name :\n ");
gets(a);
number(a);
puts(a);
if(a[0]!= '\0 '){
cal(a);
printf( "your probability are: %s%\n ",a);
}
}
void number(char a[20])
{ char *p,*q,b[20];
int i;
p=a;q=b;
for(;*p!= '\0 ';p++,q++){
if(*p> 'A '&&*p < 'Z '){
*q=*p-16;
}
else
if(*p> = 'a ' &&*p < 'z '){
*q=*p-48;
}
}
for(i=0;b[i]!= '\0 ';i++)
a[i]=b[i];
}
int cal(char a[20])
{
int result,i,j,len=0,b[20];
以下是我编写的一个程序。目的是把a到z的26个字母先让他们返回1到26个数字,然后经过以下运算:
b k o w
2 11 15 23
\ /\ /\/\/
3 2 7 5
\/ \/ \/
5 9 2
\/ \/
4 1
能看的懂吗?以下是我编写的程序,但怎么也运算不对。请高手指教:
#include <stdio.h>
main()
{
char a[20],*b,*p,*q;
printf( "Please enter your name :\n ");
gets(a);
number(a);
puts(a);
if(a[0]!= '\0 ')
do
{
for(n=0,p=a,q=p+1;*q!= '\0 ';n++,p++,q++)
if((*p+*q- '0 ')> '9 ') *p=*p+*q- '0 '-10;
else *p=*p+*q- '0 ';
*p= '\0 ';
printf( "your probability are: %s%\n ",a);
}
number(char a[20])
{ char *p,*q,b[20];
int i;
p=a;q=b;
for(;*p!= '\0 ';p++,q++)
{ if( 'j '> *p && *p> = 'a ')
*q=*p-48;
else if( 't '> *p && *p> = 'j ')
{ *q=49;
q++;
*q=*p-58;
}
else{ *q=50;
q++;
*q=*p-68;
}
}
for(i=0;b[i]!= '\0 ';i++)
a[i]=b[i];
return(a[20]);
}
------解决方案--------------------
#include <stdio.h>
main()
{
char a[20];
printf( "Please enter your name :\n ");
gets(a);
number(a);
puts(a);
if(a[0]!= '\0 '){
cal(a);
printf( "your probability are: %s%\n ",a);
}
}
void number(char a[20])
{ char *p,*q,b[20];
int i;
p=a;q=b;
for(;*p!= '\0 ';p++,q++){
if(*p> 'A '&&*p < 'Z '){
*q=*p-16;
}
else
if(*p> = 'a ' &&*p < 'z '){
*q=*p-48;
}
}
for(i=0;b[i]!= '\0 ';i++)
a[i]=b[i];
}
int cal(char a[20])
{
int result,i,j,len=0,b[20];