hell120692
1

Программа на С, которая вводит число типа int с клавиатуры, преобразует ее в строку (str), выводит на дисплей число и строку.

21.06.2011, 07:54. Показов 2131. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача направленная на усвоение следующих понятий: прототип функции; заголовок функции; тело функции; параметры, принимаемые функцией (аргументы); параметр, возвращаемый функцией. При решении задач в программе кроме функции main должна содержаться функция, выполняющая работу, определенную условием, и не должна содержать конструкции ввода-вывода. Будем считать, что вводимая с клавиатуры строка содержит не более 80 символов.

А вот и сама задача:
Написать программу, которая вводит число типа int с клавиатуры, преобразует ее в строку (str), выводит на дисплей число и строку.
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.06.2011, 07:54
Ответы с готовыми решениями:

Написать программу, которая читает с клавиатуры строку символов, преобразует ее и выводит результат на дисплей
Подсчитать количество слов в строке. Помогите плиз.

Написать программу, которая вводит с клавиатуры строку не более 100 символов, еще одну строку не более 50 символов и выводит на экран позиции вхождени
Задание: Написать программу, которая вводит с клавиатуры строку не более 100 символов, еще одну...

Написать программу, которая преобразует строку символов в число
Написать программу, которая преобразует строку символов в число (целое) или сообщает об ошибке ...

Написать и протестировать функцию , которая преобразует строку двоичных цифр в эквивалентное ей целое число
Написать и протестировать функцию , которая преобразует строку двоичных цифр , прочитанную как...

2
7 / 7 / 2
Регистрация: 29.01.2011
Сообщений: 110
21.06.2011, 08:19 2
Показал бы хотябы набросок что сам писал, а так думаю ответа ты врятли увидишь.
0
hell120692
21.06.2011, 11:33 3
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#include "stdafx.h"
#include <stdio.h>
#include <locale.h>
#define DIM 81
char conv(int,char *);
 
void main(void)
{
    setlocale (LC_ALL, "rus");
    char str[DIM];
    int n;
    printf("Введите целое число: \n");
    scanf("%lu",&n);    
    str[DIM]=conv(n,str);
    printf("\nЧисло %d преобразовано в строку:\n%s\n",n,str);  
}
 
char conv(int n,char *str)
{
    int msr[DIM],mso[DIM];
    int a=0,i,j;
    char save;
    for(i=0;i<DIM;i++)
    {
        if(i==0)
        {
            msr[i]=n/10; //деление числа на основание СС, в которую переводим
            mso[i]=n%10; //остаток от деления
            a++; //счетчик элементов массивов
        }
        else
        {
            msr[i]=msr[i-1]/10; //деление числа на основание СС, в которую переводим
            mso[i]=msr[i-1]%10; //остаток от деления
            a++; //счетчик элементов массивов
        }       
        if(msr[i]==0)
            break;
    }   
    /*
    for(i=0;i<a;i++)
    {
        printf("mso[%d]=%d msr[%d]=%d\n",i,mso[i],i,msr[i]); //для самопроверки
    }
    */
    for(i=0;i<a;i++)//цикл для преобразования масива типа int в строку char 
    {
        switch (mso[i])
        {
        case 0: str[i] = '0'; break;
        case 1: str[i] = '1'; break;
        case 2: str[i] = '2'; break;
        case 3: str[i] = '3'; break;
        case 4: str[i] = '4'; break;
        case 5: str[i] = '5'; break;
        case 6: str[i] = '6'; break;
        case 7: str[i] = '7'; break;
        case 8: str[i] = '8'; break;
        case 9: str[i] = '9'; break;
        case 10: str[i] = 'A'; break;
        case 11: str[i] = 'B'; break;
        case 12: str[i] = 'C'; break;
        case 13: str[i] = 'D'; break;
        case 14: str[i] = 'E'; break;
        case 15: str[i] = 'F'; break;
        }               
    }
    str[a]='\0';//задаем конец строки      
    save=0;
    for(i=0,j=a-1;i<j;i++,j--)//переписываем строку от конца к началу
    {
        save = str[i];
        str[i] = str[j];
        str[j] = save;
    }   
    //printf("Итоговая строка:\n%s",str); // для самопроверки
    return str[DIM];
}
это не я писал, но в общем там косяк, не переводит отрицательные числа в строку) да и я не уверен что она правильна написана..
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.06.2011, 11:33
Помогаю со студенческими работами здесь

Написать программу, которая читает с клавиатуры произвольную строку символов, преобразует ее и выводит результат на дисплей в виде строки
- Написать программу, которая читает с клавиатуры произвольную строку символов, преобразует ее и...

Пользователь вводит с клавиатуры число от 0 до 100, программа выводит число буквами
Пользователь вводит с клавиатуры число от 0 до 100, программа выводит число в буквенном формате

Написать функцию, которая преобразует строку, содержащую произвольную последовательность 0 и 1 (двоичное число), в десятичное число
Написать функцию, которая преобразует строку, содержащую произвольную последовательность 0 и 1...

Написать программу, которая читает с клавиатуры произвольную строку символов, преобразует ее и выводит результ
- Написать программу, которая читает с клавиатуры произвольную строку символов, преобразует ее и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru