这就是整个程序,fun函数的功能是:把一个整数转换成字符串,并倒序存在字符数组s中.例如n=123,则s=“321”#include#include#define M 80char s[M];void fun(long int n){int j=0;while(n>0){s[j]=n%10+'\0'; /*这句是什么

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 02:13:31
这就是整个程序,fun函数的功能是:把一个整数转换成字符串,并倒序存在字符数组s中.例如n=123,则s=“321”#include#include#define M 80char s[M];void fun(long int n){int j=0;while(n>0){s[j]=n%10+'\0'; /*这句是什么

这就是整个程序,fun函数的功能是:把一个整数转换成字符串,并倒序存在字符数组s中.例如n=123,则s=“321”#include#include#define M 80char s[M];void fun(long int n){int j=0;while(n>0){s[j]=n%10+'\0'; /*这句是什么
这就是整个程序,
fun函数的功能是:把一个整数转换成字符串,并倒序存在字符数组s中.例如n=123,则s=“321”
#include
#include
#define M 80
char s[M];
void fun(long int n)
{
int j=0;
while(n>0)
{
s[j]=n%10+'\0'; /*这句是什么意思*/
n/=10; /*这句是什么意思*/
j++;
}
s[j]='\0'
}
main()
{
long int n=1234567
printf("The origial data \n");
printf("n=%ld",n);
fun(n);
printf("\n%s",s);
}
这就是整个程序
这个语句s[j]=n%10+'\0';已经加上结束标志,为何后面又有个结束标志s[j]='\0'

这就是整个程序,fun函数的功能是:把一个整数转换成字符串,并倒序存在字符数组s中.例如n=123,则s=“321”#include#include#define M 80char s[M];void fun(long int n){int j=0;while(n>0){s[j]=n%10+'\0'; /*这句是什么
其实 s[j]=n%10+'\0'; 这个语句,加不加'\0'对结果都没有影响.因为'\0'的ASCII值就是0.如果你运行程序,会发现,加不加它对结果都没有影响.(我刚才试过,不过你的程序中有一些符号的错误,自己改正吧).举个例子,n=1234567,运行 s[j]=n%10+'\0'; 后,s[0]=7(因为是求余数),运行下一个语句后n=123456(因为 n/=10是取整1234567除以10,很显然是123456点多少,取整,就是123456),其他类推,所以循环完后,s[0]到s[6]的值分别是7,6,5,4,3,2,1.