心情有点小激动,终于不用看答案,完全靠自己完成了小甲鱼老师的一道题!但是......
小甲鱼老师说了以九宫格的形式输入,再以九宫格的形式打印,这题做了都快2个小时了,都没办法想出怎么在输入的时候也是以九宫格的形式输入,求大神指点一二。。。直接上代码#include<stdio.h>void main()
{
inta,d,s;//a是数组的行,d是数组的列,
printf("请给三组数组赋值,系统将以九宫格形式自动打印出第一行和第一列的值\n");
for(a=0;a<3;a++)
{
for(d=0;d<3;d++)
{
scanf("%d",&s);//该处进行数组赋值
}
}
for(a=0;a<3;a++)
{
for(d=0;d<3;d++)
{
switch(s==s||s==s) //该处进行数组比较是否符合条件
{
case 1:printf("%d",s);break;
case 0:printf("%c",32);break;
}
if(d==2)printf("\n");
}
}
}
复杂化了... 我学c语言的适合,甲鱼的题,只有一道题是没做出来,而去看答案的
我现在都记得,就是用嵌套循环输出*,第一排一个,第二排二个,知道第六排
*
**
***
****
*****
******
这题是我唯一在甲鱼视频c语言中没做出的题
我得记一辈子 秀丽江山 发表于 2015-5-10 11:43
我学c语言的适合,甲鱼的题,只有一道题是没做出来,而去看答案的
我现在都记得,就是用嵌套循环输出*,第 ...
{:9_236:}好厉害的样子。这个你应该也知道怎么在输入的时候以九宫格形式输入吧,帮忙指点指点{:9_228:} Anny黄 发表于 2015-5-10 12:02
好厉害的样子。这个你应该也知道怎么在输入的时候以九宫格形式输入吧,帮忙指点指点
C语言都忘记好多了。
在学ios开发。
那些题真不记得该怎么做了,连32个关键字使用方法都快忘记了 本帖最后由 迷雾少年 于 2015-5-10 12:13 编辑
LZ你看我 这代码可以不
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a={0};
scanf("%d %d %d",&a,&a,&a);
scanf("%d %d %d",&a,&a,&a);
scanf("%d %d %d",&a,&a,&a);
printf("%d\n%d %d %d \n%d \n\n",a,a,a,a,a);
return 0 ;
} 迷雾少年 发表于 2015-5-10 12:11
可以不
#include
#include
可是目前为止小甲鱼老师那的头文件还没有用到stdlib.h这个哦。应该不会跟视频一样的吧,算啦,我还是看下答案吧! Anny黄 发表于 2015-5-10 12:14
可是目前为止小甲鱼老师那的头文件还没有用到stdlib.h这个哦。应该不会跟视频一样的吧,算啦,我还是看下 ...
stdlib.h根本用不到 vs自动加上去的 你删去一样 用的都是stdio.h的函数 只用到stdio.h 迷雾少年 发表于 2015-5-10 12:15
stdlib.h根本用不到 vs自动加上去的 你删去一样 用的都是stdio.h的函数
:shock:好的,谢谢你啦!我试试运行和单步看看。。。 迷雾少年 发表于 2015-5-10 12:16
只用到stdio.h
可是你这个动态赋值的方法有个小缺点,如果这个数组行列都好几百的话,我又要它每一行才过一段,这样写不是累死人。输出也,如果是a【100】【100】的数,按你这个来写,让它输出的话不是很累人。 Anny黄 发表于 2015-5-10 21:52
可是你这个动态赋值的方法有个小缺点,如果这个数组行列都好几百的话,我又要它每一行才过一段,这样写不 ...
不是说九宫格吗,怎么还有100的:sweat: Anny黄 发表于 2015-5-10 21:52
可是你这个动态赋值的方法有个小缺点,如果这个数组行列都好几百的话,我又要它每一行才过一段,这样写不 ...
题目不是说九个数吗?{:1_1:} 迷雾少年 发表于 2015-5-12 17:45
题目不是说九个数吗?
9个数只是个例题,我希望的答案是可以是不被常量限制的。他可以是N,但是答案照样可以解答出来,且方便不费神。我后来看来下甲鱼老师的答案,跟我的相似度差不多90%。不过如果只有9个数的话确实是你这个好点 Anny黄 发表于 2015-5-13 00:29
9个数只是个例题,我希望的答案是可以是不被常量限制的。他可以是N,但是答案照样可以解答出来,且方便不 ...
我按着题目做的,题目说9个,我怎么知道你想输入的不是9个,你又没说 你的代码是9个题目也是要求9个,难道我还弄个其他的? for(i=0;i<3;i++){
for(j=0;j<3;j++){
if(i==1||j==1) printf("%d ",a);
else printf("");
}
printf("\n");
} 若输入的行列不是3的时候,直接i==n/2||j==m/2即可 请问楼主小甲鱼的c语言练习题在哪里找到的,能发个链接吗?万分感谢 /* 第6章 第5节 九宫格 */
#include <stdio.h>
void main()
{
int a={ {1,2,3},{4,5,6},{7,8,9} };
int j,k;
for(j=0;j<3;j++)
{
for(k=0;k<3;k++)
{
if(j==1 || k==1) //输出 行或列是1的元素
{
printf("%d ",a);
}
else
{
putchar(' ');
}
}
printf("\n\n");
}
}
页:
[1]
2