| 查看: 1015 | 回复: 7 | ||
crasting金虫 (小有名气)
|
[求助]
C语言程序请教
|
|
本人初学C语言,马上要期末考试了,有两个程序怎么也算不出来,求高手指教,必重谢 一个程序: #include<stdio.h> int x,y; f(int n) {static int x=0; x++; if(!(n%3)) printf("%d",n); else y++; return x; } void main( ) {int i; x=1;y=5; for(i=0;i<4;i++) x=f(i); printf("#%d#%d\n”,x,y); } 第二个程序: #include "stdio.h" void main {char ch[2][5]={"6937","8254"}, *p[2]; int i,l,s=0; for(i=0;i<2;i++) p=ch; for(i=0;i<2;i++) for j=0;p[j]>'\0';j+=2) s=10*s+p[j]-'0'; printf(''%d\n",s); } [ Last edited by crasting on 2013-7-2 at 15:47 ] |
» 猜你喜欢
之前让一硕士生水了7个发明专利,现在这7个获批发明专利的维护费可从哪儿支出哈?
已经有5人回复
博士读完未来一定会好吗
已经有29人回复
博士申请都是内定的吗?
已经有5人回复
到新单位后,换了新的研究方向,没有团队,持续积累2区以上论文,能申请到面上吗
已经有12人回复
投稿精细化工
已经有4人回复
高职单位投计算机相关的北核或SCI四区期刊推荐,求支招!
已经有4人回复
导师想让我从独立一作变成了共一第一
已经有9人回复
读博
已经有4人回复
JMPT 期刊投稿流程
已经有4人回复
心脉受损
已经有5人回复
» 本主题相关价值贴推荐,对您同样有帮助:
请教怎样把Mathematica程序转成C语言
已经有3人回复
谁帮忙吧我这个公式用C语言表达出来,我把我的一半金币分给你
已经有7人回复
求助高手将以下C语言翻译为Matlab语言,急急急!
已经有12人回复
一步一步学习C语言
已经有19人回复
电脑装一个ubuntu系统做 数值计算?
已经有11人回复
c语言高手请进,请勿灌水,谢谢!(关于读写文件的问题)
已经有6人回复
请教一个while loop程序的问题
已经有5人回复
请教关于遗传算法编程的问题(俺是小白)
已经有4人回复
【求助】如何写FORTRAN程序实现求平均最近邻距离
已经有34人回复
【讨论】环境工程专业学生要掌握哪些软件?
已经有27人回复
【讨论】大家对未来GPU在monte carlo中的应用持有什么样的态度(CUDA)?
已经有15人回复
关机计算机2级考试的问题
已经有4人回复
libralibra
至尊木虫 (著名写手)
骠骑将军
- 程序强帖: 40
- 应助: 817 (博后)
- 金币: 12914.1
- 红花: 64
- 帖子: 2238
- 在线: 287.3小时
- 虫号: 696514
- 注册: 2009-02-05
- 专业: 计算机软件

2楼2013-07-02 17:58:55
crasting
金虫 (小有名气)
- 应助: 0 (幼儿园)
- 金币: 1910.4
- 散金: 39
- 红花: 3
- 帖子: 196
- 在线: 92小时
- 虫号: 2439145
- 注册: 2013-04-27
- 专业: 光学
3楼2013-07-02 18:02:50
libralibra
至尊木虫 (著名写手)
骠骑将军
- 程序强帖: 40
- 应助: 817 (博后)
- 金币: 12914.1
- 红花: 64
- 帖子: 2238
- 在线: 287.3小时
- 虫号: 696514
- 注册: 2009-02-05
- 专业: 计算机软件

4楼2013-07-02 21:42:48
crasting
金虫 (小有名气)
- 应助: 0 (幼儿园)
- 金币: 1910.4
- 散金: 39
- 红花: 3
- 帖子: 196
- 在线: 92小时
- 虫号: 2439145
- 注册: 2013-04-27
- 专业: 光学
|
第一个题1. 下列程序的输出结果是_________。 # include <stdio.h> int x,y; f(int n) { static int x=0; x++; if(!(n%3)) printf("%d",n); else y++; return x; } void main( ) { int i; x=1;y=5; for(i=0;i<4;i++) x=f(i); printf("#%d#%d\n",x,y); } 第二个题:下列程序的输出结果是___________________。 #include "stdio.h" void main() {char ch[2][5]={"6937","8254"},*p[2]; int i,I,s=0; for(i=0;i<2;i++)p=ch; for(i=0;i<2;i++) for(j=0;p[j]>'\0';j+=2) s=10*s+p[j]-'0'; printf("%d\n",s); } 这是两个完整的题目,麻烦高手给指导一下吧! |
5楼2013-07-03 09:31:16
libralibra
至尊木虫 (著名写手)
骠骑将军
- 程序强帖: 40
- 应助: 817 (博后)
- 金币: 12914.1
- 红花: 64
- 帖子: 2238
- 在线: 287.3小时
- 虫号: 696514
- 注册: 2009-02-05
- 专业: 计算机软件
【答案】应助回帖
★ ★ ★ ★ ★ ★ ★ ★
crasting: 金币+8, ★★★★★最佳答案, 我是从试题卷上直接粘贴的,可能是题目有问题吧,非常感谢您的热心帮助,对我很有用 2013-07-03 15:08:19
crasting: 金币+8, ★★★★★最佳答案, 我是从试题卷上直接粘贴的,可能是题目有问题吧,非常感谢您的热心帮助,对我很有用 2013-07-03 15:08:19
|
最简单,你把代码跑一次就有结果了. 要分析就得一条条代码看(代码不符合标准,改了可以运行): 1.函数f要有返回类型int,函数main一般需要返回int给系统. 结果是03#4#7 main中用0-3调用了f函数4次,返回值赋给全局变量x 子函数f中,先静态变量x自加,如果输入参数可以整除3,打印,否则全局变量y自加后返回静态变量x i=0,f中x=1,打印0,返回1 i=1,f中x=2,y=6,返回2 i=2,f中x=3,y=7,返回3 i=3,f中x=4,打印3,返回4 main中打印#x#y就是#4#7 所以看到的结果就是03#4#7 2.贴代码的时候用[code]代码在这里[/code]把代码框起来,貌似丢了无数的[i],还有上面的main无返回类型问题,你的代码是手打的吗?那个大写I应该是j. 改完后结果是6385. 弄了2个字符串,然后用指针数组元素分别指向它们(第一个for) 然后开始双循环,内层循环干一件事情,从字符串头开始,每隔一个取一个数字(这时候是字符),转为整型,添加到s表示的那个数的结尾(如果原s是2,找到一个3,s就变成了23).2个数分别是6937和8254.隔一个拿一个放一起就是6385. 那个printf从缩进看属于内层循环,但是由于for都没有用花括号包,因此只有s赋值那一行在循环体内部,printf是双层循环完了之后直接输出s一次,结果是6385. |

6楼2013-07-03 14:13:15
学虫dj
金虫 (正式写手)
- 应助: 18 (小学生)
- 金币: 892.4
- 散金: 63
- 帖子: 688
- 在线: 89.9小时
- 虫号: 1829966
- 注册: 2012-05-22
- 性别: GG
- 专业: 应用地球物理学

7楼2013-07-04 10:37:07
8楼2013-09-03 14:05:57













回复此楼