第一题的结果是:1234。函数f()就是用于将一个正正整数数字字符串转为对应的十进制数字。
测试代码如下:
#include <stdio.h>
// 此函数用于将正整数数字字符串 转为对应的数字
int f(char *s){
int k=0;
while(*s){ //遍历字符串中每一个字符
// k*10用于前面的数字依次乘以10
// *s++,先取出此位置的字符,然后指针++,指向下一个字符位置
// -'0',用于将前的字符转为对应的数字,此根据数字字符'0'到'9'在ASCII码表中的连续性而来
k=k*10+*s++-'0';
}
// 返回对应的数字
return (k);
}
int main(void){
char s[20];
printf("请输入一个正整数:");
scanf("%s",s); // 获取数字字符串
int num = f(s); // 调用函数,将数字字符串转为对应的数字
printf("正整数为:%d\n",num);
return 0;
}