yangzhixiaohuli 发表于 2023-11-8 18:32:44

求助一下

编写程序,输入一个数字字符,将其转化为数字并输出(用指针实现)。
分数 10
作者 张丽华
单位 嘉兴南湖学院
编写程序,输入一个数字字符,将其转化为数字,输出该数字并换行(用指针实现)。

#include <stdio.h>
int main()
{
    char c,*pc;
    int d,*pd;
    pc=
&c
;
    pd=
&d
;
    *pc=getchar();//输入数字字符
    *pd=
*pc
;    //转化为数字
    printf(
"%d\n"
,*pd);//输出数字
    return 0;
}

这题怎么写

isdkz 发表于 2023-11-8 18:34:09

这个程序的功能是将输入的数字字符转化为数字并输出。下面是程序的详细解释:

#include <stdio.h>

int main()
{
    char c, *pc;// 定义字符变量c和指向字符的指针pc
    int d, *pd;   // 定义整数变量d和指向整数的指针pd

    pc = &c;      // 将pc指针指向c变量的地址
    pd = &d;      // 将pd指针指向d变量的地址

    *pc = getchar();// 输入数字字符,将其存储在c变量中
    *pd = *pc - '0';// 将字符转化为数字,存储在d变量中

    printf("%d\n", *pd);// 输出数字

    return 0;
}


程序的执行流程如下:

1. 首先,定义了一个字符变量 c 和一个指向字符的指针 pc ,以及一个整数变量 d 和一个指向整数的指针 pd 。
2. 将指针 pc 指向变量 c 的地址,将指针 pd 指向变量 d 的地址。
3. 使用 getchar() 函数从标准输入中读取一个字符,并将其存储在变量 c 中。
4. 将字符变量 c 转化为数字,存储在整数变量 d 中。这里使用了ASCII码的差值来实现字符转数字的操作,即 *pd = *pc - '0' 。
5. 使用 printf 函数输出整数变量 d 的值,并在末尾添加换行符 \n 。
6. 程序结束,返回0。

这样,当你输入一个数字字符后,程序会将其转化为数字并输出。
页: [1]
查看完整版本: 求助一下