问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言高手求教,程序理解

发布网友 发布时间:2024-10-01 00:04

我来回答

3个回答

热心网友 时间:2024-10-01 01:03

我学的是C++,你的程序我看不懂,不过 fun 函数基本能懂 照着你的程序给你翻译一下
返回值为无符号的 fun函数 形参为 无符号
定义了几个无符号的变量
把m的值赋值给t
while条件为 t>10 满足时 循环
if t可以除以10,即t>10
对t除以10进行取余(即t的个位数),赋值给p
用s加上p乘以s1赋值给s
s1乘以10为新的s1
t赋值为t除以10后的取整(例 123取整后为12)
如果此时的t>10,进入下一次循环
返还s的值
以整数1234为例 从if开始 各参数的变化
if
p=t%10 p=4
s=0+4*1=4
s1=10*1=10
t=t/10=123
进入下一循环
p=3
s=4+3*10=34
s1=10*10=100
t=12
再循环
p=2
s=34+2*100=234
s1=1000
t=1
此时t<10.循环结束 返回s的值 (即234)
后面的程序看不懂

热心网友 时间:2024-10-01 01:03

有那么复杂么?写的太复杂。

热心网友 时间:2024-10-01 01:04

#include <conio.h>
#include <stdio.h>
unsigned fun(unsigned m)
{
unsigned t,s=0,s1=1,p=0;
t=m; /*用t来运算,不改变m*/
while(t>10) /*开始循环的条件*/
{
if(t/10) /*多余,t>10,此表达式不为0*/
p=t%10; /*模10得个位数,即取出最低位*/
s=s+p*s1; /*因为s1=1,将得到的最低位数字放到s的最低位*/
s1=s1*10; /*s1*10,说明接下来循环是将得到的最低位放到s的十位、百位等*/
t=t/10; /*t除10,t的原来十位数字变为个位数字,重复刚才操作*/
}
return s;
}
main()
{
unsigned n;
FILE *out; /*该指针指向系统一个文件*/
printf("Enter a unsigned integer data : ");
scanf ("%u",&n);
printf("The original data is : %u\n",n);
if(n<10)
printf("Data error!");
else
printf("The result : %u\n",fun(n)); /*运算后打印结果*/
out=fopen("outfile.dat","w"); /* out指向文件outfile.dat ,以写的方式打开*/
fprintf(out,"%u",fun(28)); /*这个函数将函数值通过指针out写到outfile.dat */
fclose(out); /*文件使用后要关闭的,这是常识*/
}
关于文件操作语法:fopen("outfile.dat","w"),是先写文件名加双引号,再写打开方式(很多,见教材);fprintf(out,"%u",fun(28)),先写文件指针,再加上与printf函数同样的内容。
/*这里面是解释*/
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
南山有哪些大学 哈工大威海和哈工大比起来差很多吗?到底算一般大学还是好大学... 哈尔滨工业大学建筑设计研究院设计作品 中广电广播电影电视设计研究院海南分院怎么样? 海口有北京大医院分院吗? 中国市政工程华北设计研究总院分支机构与公司 海口市滨江分院是不是三甲医院 北京市政院海口分院怎么样啊 华北市政院海口分院怎么样 C9老八校来了!哈工大建筑与设计学院(含深圳建筑学院、国际设计学院)考 ... 华为是经营什么的民族企业? 为什么黑名单还不能移出微信 再见的地方的歌词是什么? 红米K50电竞版的电池容量能满足游戏需求吗? 建筑学生想买个相机 求推荐 单反或数码的都行 价格5000以内 最好说明... 如何将主板上COMS电池放电一般放电时间多久 跨境电商有几个服务商类?怎么选? ...同时兼卖卷烟。我有卷烟零售许可证,但是营业执照上登记的经营范围没... 晚上做梦有女鬼杀我 请高手帮我解梦 玖富叮当贷审核要多久到账 玖富叮当贷的款审核时间介绍 金银岛精彩片段及点评 小说金银岛的详细内容 于都五中高三12班为何要早上5点起来跑步,睡眠严重不足,上课打瞌睡... 现在到高三冲刺了,但晚上学习效率很低……求帮忙 继续教育会计什么意思 梦见小货车掉下了坑又用钢丝绳拉了上来? 宜宾蜀南竹海叠翠酒店酒店介绍 宜宾哪些酒店 空调怎么样清洗一次多少钱 空调清洗多少钱一次合理呢? 下面那个if else 语句是怎么回事? 为什么要那样写呢?if 表达式都能看懂... else without a previous 'if'哪错了(新手求教)? 上古卷轴ol不认识英文怎么办 太原市私立中学排名是怎样的? 太原哪些私立高中学校收费便宜 为什么我的电脑每次开机音量控制器中的波形一栏总是变为最小? 任务栏下的音量控制器中的波形选项会不时的自动变为最小值,谁知道怎么... 力帆现在叫什么名字 主音量控制器里面的波形音量在一段时间后总自动弹到没有,重装了驱动程... ...音量控制器中"波形"总在放完一首歌后就自动降到最低点 为什么我得电脑音量控制器波形总是最小音量,一调节总有莫名的声音播放... ...时段出现刺耳声响,但是波形控制器已经开到最小了。急急急急_百度... 苹果6怎么把应用合到一个里面 苹果6不在一个页面上的应用如何放在一个文件夹里 苹果6怎么在图标文件夹内在放一个图标文件夹 苹果6plus屏幕上的软件不能删的怎么才能放到一个里 宜章县广电局机构概况 virtualbox 安装完centos后,虚拟光盘中有一个VboxGuestAdditions.iso... 美的定时开关机怎样用? 美的定时开关机怎么使用