kokomo
发表于 2009-5-12 13:13:59
这个作业对于我讲,可能现在还太高深了,正在学习中!!
能否以后再来交作业?
谢谢 !!
努力学习中,从头开始呢!
北燕南飞
发表于 2009-5-12 20:12:55
我只看出
define H strlen(a)
main()
{
char *a="ChinaPYG!";(开辟空间并写上ChinaPYG!)
int*b=0;
for( ; *((char *)&b+1) < H ; (*((char *)&b+1))++)
printf("%c",*(a + *((char *)&b+1)));
}
我这几天有点忙(第二课刚看了一半)
我会尽快补上的
xpower
发表于 2009-5-13 08:49:35
#include<stdio.h>
main()
{
int r,c,k;
scanf("%d",&k);
for(r=1;r<=k/2+1;r++)
{
for(c=1;c<=k/2+r;c++)
{if((c==(k+1)/2-r+1)&&(c==(k+1)/2+r-1))
printf("*\n");
else if(c==(k+1)/2-r+1)
printf("*");
else if(c==(k+1)/2+r-1)
printf("*\n");
else
printf(" ");
}
}
for(r=k/2;r>=1;r--)
{
for(c=1;c<=k/2+r;c++)
{
if((c==(k+1)/2-r+1)&&(c==(k+1)/2+r-1))
printf("*\n");
else if(c==(k+1)/2-r+1)
printf("*");
else if(c==(k+1)/2+r-1)
printf("*\n");
else
printf(" ");
}
}
}
在tc for win下编译通过。
lmy
发表于 2009-5-13 10:28:51
#include "iostream.h"
void main()
{
int i,j,n;
cin>> n;
for (i = 1; i <= n; i ++ )
{
if (i <= (n + 1) / 2)
{
for (j = ((n + 1) / 2)-1; j >= i; j --)
{
cout << " ";
}
if (i > 1 && i != n)
{
cout << "*";
}
for (j = 1; j <= 2 * (i -1) - 1; j ++)
{
cout << " ";
}
cout << "*" << endl;
}
else
{
for (j = i-1 ; j >= (n + 1) / 2; j --)
{
cout << " ";
}
if (i > 1 && i != n)
{
cout << "*";
}
for (j = 1; j <= 2 * (n -i) - 1; j ++)
{
cout << " ";
}
cout << "*" << endl;
}
}
}
VC++ 6 编译通过。
sdprtf
发表于 2009-5-13 13:32:16
看了前4了视频之后做的。
1.#define H strlen(a)
main()
{
char *a="ChinaPYG!";
int*b=0;
for( ; *((char *)&b+1) < H ; (*((char *)&b+1))++)
printf("%c",*(a + *((char *)&b+1)));
}*((char *)&b+1)是取b两个字节中的第二个,当然也是0。H为字串长度
for循环实际就是(C++) for( int i = 0; i < H ; i++)
printf("%c",*(a + i);2.我这个方法太麻烦了,期待N大讲解main()
{
int a,i,j,k;
scanf("%d",&a);
if((a == 0) || !(a%2))
{
printf("input wrong!");
return;
}
for(i = a/2;i>0;i--)
{
for(j = 0;j<i;j++)
printf(" ");
printf("*");
for(j = 0;j<a/2-i;j++)
printf(" ");
for(k = 1;k<a/2-i;k++)
printf(" ");
if(i != a/2)
printf("*\n");
else
printf("\n");
}
for(i = 0;i<=a/2;i++)
{
for(j = 0;j<i;j++)
printf(" ");
printf("*");
for(j = 0;j<a/2-i;j++)
printf(" ");
for(k = 1;k<a/2-i;k++)
printf(" ");
if(i != a/2)
printf("*\n");
else
printf("\n");
}
}
[ 本帖最后由 sdprtf 于 2009-5-13 21:42 编辑 ]
xpower
发表于 2009-5-13 14:56:32
#include<stdio.h>
#include<math.h>
main()
{
int r,c,k;
scanf("%d",&k);
for(r=0;r<k;r++)
{
for(c=0;c<=k;c++)
{
if(c==abs(k/2-r)||c==k-1-abs(k/2-r))
printf("*");
else if(c==k)
printf("\n");
else
printf(" ");
}
}
}
重写
pptppt
发表于 2009-5-13 15:22:37
看录像做个笔记
/* Note:Your choice is C IDE */
#include "math.h"
#define N 17
#define F N/2
void main()
{
int i,j;
for(i=0;i<N;i++)
{
for(j=0;j<=N;j++)
{
if(j==abs(F-i)|| j==N-1-abs(F-i))
printf("*");
else if(j==N) printf("\n");
else printf(" ");
}
}
}
lqiulu
发表于 2009-5-13 16:13:12
#include <iostream>
#include <math.h>
using namespace std;
main()
{
int i,j,N,F;
start:printf("请输入棱形数字,必须是奇数:");
scanf("%d",&N);
if (N % 2 == 0 )
{
printf("你输入的数字不正确!!!\n");
goto start;
}
else
{
F = N/2;
for (i=0;i<N;i++)
{
for (j=0;j<=N;j++)
{
if (j == abs (F - i) || j == N - 1 - abs (F - i )) printf("*");
else if (j == N) printf("\n");
else printf(" ");
}
}
}
}
[ 本帖最后由 lqiulu 于 2009-5-13 16:14 编辑 ]
Nisy
发表于 2009-5-13 16:22:03
原帖由 lqiulu 于 2009-5-13 16:13 发表 https://www.chinapyg.com/images/common/back.gif
#include
#include
using namespace std;
main()
{
int i,j,N,F;
start:printf("请输入棱形数字,必须是奇数:");
scanf("%d",&N);
if (N % 2 == 0 )
{
printf("你输入的数 ...
看下这样是否OK ~
start:printf("请输入棱形数字,必须是奇数:");
scanf("%d",&N);
if (N % 2 == 0 )
{
printf("你输入的数字不正确!!!\n");
goto start;
}
--------------------------------------------
scanf("%d",&N);
while(!(N%2) || N>25)
{
printf("你输入的数字为偶数,请输入一个小于25的奇数。\n");
scanf("%d",&N);
}
lqiulu
发表于 2009-5-13 16:55:24
原帖由 Nisy 于 2009-5-13 16:22 发表 https://www.chinapyg.com/images/common/back.gif
看下这样是否OK ~
start:printf("请输入棱形数字,必须是奇数:");
scanf("%d",&N);
if (N % 2 == 0 )
{
printf("你输入的数字不正确!!!\n");
goto start;
}
...
可以通过,不错,这样更符合基于过程的程序设计原则,学习了。