C语言程序设计 输入字符数字 输出十进制数字

本文介绍了一个C语言程序,该程序接受用户输入的字符数字字符串,通过自定义函数`fun`将其转换为对应的十进制整数。程序首先检查字符串是否包含负号,然后使用`strlen`获取字符串长度,并通过循环处理每个字符,将其转换为整数。最终,程序打印出转换后的十进制数字。
摘要由CSDN通过智能技术生成

#include<stdio.h>
#include<string.h>


	long fun(char *p){
	    
	    
	    int i,len,t;
	    long x = 0;
	    
	    
	    len = strlen(p);
	    if(p[0] == '-'){
	        t=-1; len-- ; p++;
	    }
	    else  t = 1;
	    
	    while(*p)  x  = x * 10 + (*p++)-48 ;
	    
	    return t*x ; 
	}
	


int main()
{
    char s[6] ;	
    long n;
    
    printf("Please Enter a string:\n");
    
    gets(s);
    
    n=fun(s);
	
	printf("%d \n",n);
	
	return 0;
}

#include<stdio.h>      \\          声明这个库函数才能使用scanf() 和 printf()
#include<string.h>      \\          声明这个库函数才能使用strlen()


  

 \\         返回值的类型是 long 整型数 ,  输入的形参类型是  字符类型的指针

long fun(char *p){           
        
        
        int i,len,t;
        long x = 0

### 回答1: a 97 b 98 c 99 d 100 e 101 f 102 g 103 h 104 i 105 j 106 k 107 l 108 m 109 n 110 o 111 p 112 q 113 r 114 s 115 t 116 u 117 v 118 w 119 x 120 y 121 z 122 ### 回答2: 可以通过以下程序使用for循环输出小写字符及其对应的ASCII值,每行输出3个字符: ```python for i in range(97, 123): # 小写字母的ASCII码范围是97到122 print(f"{chr(i)}: {i}", end="\t") if (i - 96) % 3 == 0: # 每行输出3个字符 print() # 换行 ``` 这段程序的基本思路是使用`range`函数生成97到122之间的整数,然后通过`chr`函数将整数转换为对应的字符,再利用`print`函数输出字符及其对应的ASCII值。并通过`if`语句控制每行输出3个字符后换行。其中,`end="\t"`表示输出字符后接一个制表符,使得输出结果在同一行对齐。 运行程序后,输出结果如下: ``` a: 97 b: 98 c: 99 d: 100 e: 101 f: 102 g: 103 h: 104 i: 105 j: 106 k: 107 l: 108 m: 109 n: 110 o: 111 p: 112 q: 113 r: 114 s: 115 t: 116 u: 117 v: 118 w: 119 x: 120 y: 121 z: 122 ``` 每行输出3个小写字符及其对应的ASCII值,使用制表符`\t`对齐。 ### 回答3: 可以通过以下代码来实现: ```python for i in range(97, 123): # ASCII码中97~122对应小写字母a~z print(chr(i), i, end=' ') if (i - 96) % 3 == 0: # 每行输出3个字符 print() ``` 输出结果如下: ``` a 97 b 98 c 99 d 100 e 101 f 102 g 103 h 104 i 105 j 106 k 107 l 108 m 109 n 110 o 111 p 112 q 113 r 114 s 115 t 116 u 117 v 118 w 119 x 120 y 121 z 122 ``` 以上代码使用了一个`for`循环,从97循环到122,对应了小写字母a到z的ASCII值。使用`chr()`函数将ASCII值转换为对应的字符,使用`print()`函数输出字符和ASCII值,并使用`end`参数设置输出后不换行,再通过一个`if`语句判断是否需要换行。每输出3个字符之后,就会换行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值