Programación en lenguaje C: escriba una función para contar el número de letras, números, espacios y otros caracteres en una cadena.
#includeamp;lt;stdio.hamp;gt;
void TongJi(char s[])
{
int ZiMu =0, KongGe=0, ShuZi=0, QiTa=0, i;
for(i=0;samp;lt;iamp;gt;!='\0';i)
{
if(samp;lt;iamp;gt;==32)KongGe;
si no((samp;lt;iamp;gt;amp;gt ;=48)amp;amp;(samp;lt;iamp;gt;amp;lt;=57))ShuZi ;
else if(((samp;lt;iamp;gt;amp;gt ;=97)amp;amp;(samp;lt;iamp;gt;amp;lt;=122))||((samp;lt;iamp;gt;amp;gt;=65)amp;(muestra ;lt;iamp;gt;amp;lt;=90)))ZiMu ;
else QiTa ;
}
printf("Espacio: d; Número: d; letra: d; otros: d. \n", KongGe, ShuZi, ZiMu, QiTa);
}
int main()
{
char s[100];
printf("Por favor ingrese: ");
gets(s);
TongJi(s);
retorno 0;
}
Información ampliada:
uso de retorno
C palabra clave, que proporciona una forma de finalizar la ejecución de la función. Cuando la declaración de retorno proporciona un valor, este valor se convierte en el valor de retorno de la función.
Hablando de retorno, es necesario mencionar la definición de la función principal. La siguiente es la información que se encuentra en Internet. , digítelo bien, lo cual es muy útil para comprender el valor de retorno en la función principal.
Muchas personas e incluso algunos libros en el mercado usan void main(), lo cual en realidad es incorrecto. void main() nunca se ha definido en C/C.
Bjarne Stroustrup, el padre de C, escribe claramente en las preguntas frecuentes de su página de inicio que la definición void main(){/*...*/}no es ni nunca ha sido C,
ni siquiera ha sido C. (void main() nunca ha existido en C o C). Permítanme hablar sobre la definición de función principal en los estándares C y C respectivamente.
1.C
En C89, main() es aceptable. La obra maestra clásica de Brian W.Kernighan y Dennis M.Ritchie El lenguaje de programación C 2e ("Lenguaje de programación C Segunda edición") utiliza main().
Sin embargo, en el último estándar C99, sólo las dos definiciones siguientes son correctas:
int main(void)
int main(int argc, char*argv[])
(
Referencia: ISO/IEC 9899: 1999(E) Lenguajes de programación—C 5.1.2.2.1 Inicio del programa)
Por supuesto, también podemos hacer un cambio. Por ejemplo: char*argv[] se puede escribir como char**argv; argv y argc se pueden cambiar a otros nombres de variables (como intval y charval), pero deben cumplir con las reglas de nomenclatura de las variables.
Si no necesita obtener parámetros de la línea de comando, utilice int main(void); de lo contrario, utilice int main(int argc, char*argv[]).
El tipo de valor de retorno de la función principal debe ser int para que el valor de retorno pueda pasarse al activador del programa (como el sistema operativo).
Si no hay una declaración de retorno al final de la función principal, C99 estipula que el compilador debe agregar automáticamente retorno 0 al archivo de destino generado (como un archivo exe), lo que indica que el programa sale; normalmente. Sin embargo, todavía recomiendo agregar una declaración de devolución al final de la función principal. Aunque no es necesario, es un buen hábito.
Tenga en cuenta que vc6 no agregará return 0; en el archivo de destino. Esto probablemente se deba a que vc6 era un producto en 1998, por lo que no admite esta característica. ¡Ahora entiendes por qué te sugiero que agregues una declaración de devolución! Sin embargo, gcc3.2 (compilador de C en Linux) agregará retorno 0 al archivo objeto generado.