Как для символа C вывести два символа, первый из которых опережает символ C в кодовой таблице , а второй следует за символом C
Решение данного вопроса должно быть в функцие task 2
#include<stdio.h>
#include<math.h>
#include<ctype.h>
#include<conio.h>
#include<locale.h>
void task1();
void task2();
void task3();
void task4();
void task5();
void task6();
char C,V,K;
int N;
void main(){
task1();
task2();
task3();
task4();
task5();
}
void task1(){
/*do {
N=getch();
printf ("\nN: ");
putchar(N);
} while (32<=N<=126);
getch();*/
printf("task1:");
scanf("%d",&N);
if(N<32||N>126)printf("error");
else printf("\nSymbol:%c,kod:%d",N,N);
putchar(N);
}
void task2(){
printf("\ntask2:");
C=getche();
K=C-1;
V=C+1;
printf("smaller: %c.", K);
printf("bigger: %c.", V);
/*scanf("%c",&C);
do {
V=C+1;
C=getchar();
printf ("You enter %c. ASCII code = %d\n", V, (int)V);
} while (C<V);
do {
K=C-1;
C=getchar();
printf ("You enter %c. ASCII code = %d\n", K, (int)K);
} while (K>V);*/
}
void task3(){
char M[100];
for(int i=0;i<26;i++){
printf("firs elements:%d",M[i]);
printf("%c",'A'+i);
}
}
void task4(){
char Z[100];
for(int i=0;i<26;i--){
printf("last elements:%d",Z[i]);
printf("%c",'z'+i);
}
}
//void task5(char* str){
void task5(char* str){
{
int alpha = 0;
int digits = 0;
while(*str !=0)
{
alpha++;
if(isdigit(*str++))
digits++;
}
if(C=digits)printf("\ndigits");
else printf("alpha");
}
}
Ответы (1 шт):
Автор решения: Harry
→ Ссылка
А что не работает-то?
Только я б на вашем месте, если уж так хотите работать - хотя бы разделял вывод в разные строки:
void task2()
{
printf("\ntask2:");
C=getche();
K=C-1;
V=C+1;
printf("\n\nsmaller: %c.\n", K);
printf("bigger: %c.\n", V);
}
Получается что-то вроде
task2:j
smaller: i.
bigger: k.
Что не так?