Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Написать все целые, положительные, взаимно простые с m из отрезка [1;m-1]. http://www.cyberforum.ru/cpp-beginners/thread323584.html
написать все целые положительные взаимно простые с m из отрезка .
C++ Запись логических выражений как сделать проверку && и || в одном if for(;i>0; i--) { if(a>0 && (b <0 || c<0 || d<0) z=0; } куда выходит оператор break? http://www.cyberforum.ru/cpp-beginners/thread323582.html
Что следует дальше за C++? C++
Я вот уже несколько месяцев изучаю C++ самостоятельно дома ради собственного интереса. Както понравилось оно мне однажды складывать разные простинькие програмки вот ирешил изучать далие. Читаю сейчас Стивена Прата. Вот, собственно, мне интересно, что далие идет в учебном курсе по програмированию после изучения C++? C# чтоли? Немного переформулирую свой вопрос, сейчас все программы которые я...
C++ Шаблоны функций
Добрый вечер! less.h #pragma once #include "StdAfx.h" //preconditions: //defined operator< template <typename elemType> class less
C++ Объектно-ориентированое программирование. Наследование. http://www.cyberforum.ru/cpp-beginners/thread323544.html
Описать объект ввод "последовательности" с методами "нахождения количества отрицательных и положительных чисел","нахождение суммы" и "нахождение максимума".
C++ Поиск самой длинной строки в файле дана такая задача: Дан текстовый файл f. Вывести самую длинную строку файла. Если в файле имеется несколько строк с наибольшей длиной, то вывести все эти строки. Записать в перевёрнутом виде строки файла f в файл g. Порядок строк в файле g должен совпадать с порядком исходных строк в файле f. Моя просьба написать программу максимально простым способом подходящим под эти условия. Сразу... подробнее

Показать сообщение отдельно
hell120692
Сообщений: n/a
21.06.2011, 11:33     Программа на С, которая вводит число типа int с клавиатуры, преобразует ее в строку (str), выводит на дисплей число и строку.
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];
}
это не я писал, но в общем там косяк, не переводит отрицательные числа в строку) да и я не уверен что она правильна написана..
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru