Examen final de Lengua C 2017
Problema A: Escribir una función: Adjuntar Código
Descripción
Ingrese una letra en inglés, tanto en mayúscula como en minúscula ¿Cuál es la primera letra en inglés?
编写两个函数chseq()、output(),完成程序,其原型为:
int chseq(char ch);
功能:形参ch传入一个英文字母,大小写均可。用int类型返回其顺序。
Output(char ch, int n);
功能:输出字母ch是第几个英文字母。
函数的调用格式见“Append Code”。
La entrada
es una letra inglesa ch, tanto en mayúsculas como en minúsculas son posibles.
La salida de
salida es: "ch es ??? carácter". Entre ellos, "???" representa el número ordinal (el número uno).
En el número ordinal k (kth): el dígito 1 es el final de "st", el que es 2 es el final de "nd", el que es 3 es el final de "rd", los que son 4-9 y 0 son todos "th" al final.
Por ejemplo: "a es el primer carácter", "B es el segundo carácter", etc.
Entrada de muestra
C
Salida de muestra
C is 3rd character.
SUGERENCIA
Agregar código
int main()
{
char ch = getchar();
int n = chseq(ch);
output(ch, n);
}
años:
#include<stdio.h>
#include<string.h>
int chseq(char ch)
{
if(ch>='a'&&ch<='z'){
return (ch-'a'+1);
}else if(ch>='A'&&ch<='Z'){
return (ch-'A'+1);
}
return 0;
}
void output(char ch, int n)
{
if(n%10==1){
printf("%c is %dst character.\n",ch,n);
}else if(n%10==2){
printf("%c is %dnd character.\n",ch,n);
}else if(n%10==3){
printf("%c is %drd character.\n",ch,n);
}else{
printf("%c is %dth character.\n",ch,n);
}
}
int main()
{
char ch = getchar();
int n = chseq(ch);
output(ch, n);
return 0;
}